public override void Dispose()
        {
            base.Dispose();

            if (this.serversListProvider != null)
            {
                this.serversListProvider.Updated -= this.ListUpdatedHandler;
                this.serversListProvider          = null;
            }
        }
 public MultiplayerMenuServersController(
     IServersListProvider serversListProvider,
     ServerViewModelsProvider serverViewModelsProvider)
     : base(serverViewModelsProvider)
 {
     this.CommandEdit = new ActionCommandWithParameter(
         server => this.ExecuteCommandEdit((ViewModelServerInfo)server));
     this.CommandRemove = new ActionCommandWithParameter(
         server => this.ExecuteCommandRemove((ViewModelServerInfo)server));
     this.serversListProvider          = serversListProvider;
     this.serversListProvider.Updated += this.ListUpdatedHandler;
 }