示例#1
0
 public void Close(object param)
 {
     if (param is TradeServerViewModel tradeServer)
     {
         tradeServer.Dispose();
         SelectedTradeServerViewModels.Remove(tradeServer);
     }
 }
示例#2
0
        private async void DeleteTradeServer(object param)
        {
            var tradeServer = param as TradeServer;

            if (tradeServer == null)
            {
                return;
            }

            var result = Dialog.ShowMessage(new MessageBoxSettings
            {
                Title             = "Delete Trade Server",
                Text              = $"Are you sure you want to delete {tradeServer.Name}?",
                MessageType       = MessageType.Question,
                MessageBoxButtons = MessageBoxButtons.OkCancel
            });

            if (result.Equals(MessageBoxResult.Cancel))
            {
                return;
            }

            var tradeServerViewModel = SelectedTradeServerViewModels.FirstOrDefault(s => s.TradeServer.Name.Equals(tradeServer.Name));

            if (tradeServerViewModel != null)
            {
                Close(tradeServerViewModel);
            }

            try
            {
                IsLoading = true;

                await tradeServerService.DeleteTradeServer(tradeServer);

                TradeServers.Remove(tradeServer);
            }
            catch (Exception ex)
            {
                ShowMessage(new Message {
                    MessageType = MessageType.Error, Text = ex.Message
                });
            }
            finally
            {
                IsLoading = false;
            }
        }
示例#3
0
        public void Close(object param)
        {
            var tradeServer = param as TradeServerViewModel;

            if (tradeServer != null)
            {
                tradeServer.Dispose();

                IDisposable subscription;
                if (tradeServerObservableSubscriptions.TryGetValue(tradeServer.TradeServer.Name, out subscription))
                {
                    subscription.Dispose();
                }

                tradeServerObservableSubscriptions.Remove(tradeServer.TradeServer.Name);

                SelectedTradeServerViewModels.Remove(tradeServer);
            }
        }