protected internal void OpenedTTRemove(Customer tt) { if (this.SaveNotes(tt, true)) { OpenedTT.Remove(tt); } }
private bool OpenedTTClear() { for (int i = OpenedTT.Count - 1; i >= 0; i--) { if (!this.SaveNotes(OpenedTT[i], true)) { return(false); } OpenedTT.Remove(OpenedTT[i]); } return(true); }
private void OpenTTinTab(Customer selected, bool Ping = false) { Task.Run(async delegate { await Dispatcher.BeginInvoke(DispatcherPriority.Normal, (Action) delegate { try { TaskAwaiter awaiter; Customer ExistTT; if (Ping) { Ping = PingSubnetButton.IsEnabled; } if (NewMainWindow.settings.Fields.OneTab) { OpenedTTClear(); } AutoOpen = false; //MainWindow.Bindings.isttselected = true; //if (SelectedTT != selected) //{ // //MainWindow.Bindings.isipselected = false; // //MainWindow.Bindings.title2 = string.Empty; //} //SelectedTT = selected; TTPinComment.DataContext = SelectedTT; subnet_addr_button.DataContext = SelectedTT; //OnIPDetected += new TTEvent(SelectedTT_OnIPDetected); if (NewMainWindow.settings.Fields.AutoCloseTab) { selected.OnCloseCounter -= new TTEvent(SelectedTT_OnCloseCounter); selected.OnCloseCounter += new TTEvent(SelectedTT_OnCloseCounter); selected.CloseCounter = 0; } NewMainWindow.CopyTT = selected; if (OpenedTT.Contains(selected)) { Ping = true; ExistTT = FindTTbyCode(selected.NumberCVZ.ToString(), NewMainWindow.OpenedTT); if (ExistTT != null) { OpenedTTRemove(ExistTT); } NewMainWindow.OpenedTT.Add(selected); Tabs.SelectedIndex = Tabs.Items.IndexOf(selected); //Tabs.ItemsSource = NewMainWindow.OpenedTT; if (selected.CustomerType == CustomerTypes.TTCVZ) { selected.PopulateIPList(); selected.PopulateInfo(); } Dispatcher.Invoke(async() => { await selected.LoadNotes(); }); ExistTT = null; } else { OpenedTT.Add(selected); Tabs.SelectedIndex = Tabs.Items.IndexOf(selected); } MRUTT MRU_temp = new MRUTT(); MRU_temp.Code = selected.NumberCVZ.ToString(); MRU_temp.Name = selected.ToStringDisplay + " " + selected.Lan_Ip; MRU_temp.Time = $"{DateTime.Now:dd/MM/yyyy hh:mm:ss tt}"; //MainWindow.MRU = new ObservableCollection<MRUTT>(MainWindow.MRU.Where<MRUTT>(new Func<MRUTT, bool>()).Take<MRUTT>(11).ToList<MRUTT>()); MRU = new ObservableCollection <MRUTT>((from i in MRU select i).Take(111).ToList()); //MainWindow.MRU = new ObservableCollection<MRUTT>(); NewMainWindow.MRU.Insert(0, MRU_temp); ListViewMRU.ItemsSource = NewMainWindow.MRU; SaveMRU(); if (Ping) { awaiter = PingSelectedTT(true).GetAwaiter(); } } catch (Exception ex) { Error(ex.Message, "Ошибка", ex.StackTrace); } });