private void RefreshPortPairs() { ObservableCollection <Com0comPortPair> newpairs = Com0comSetup.GetPortPairs(); //first we need to delete any ports that don't appear in the new list foreach (var expair in PortPairs.ToList()) { var newpair = (from p in newpairs where p.PairNumber == expair.PairNumber select p).FirstOrDefault(); if (newpair == null) { expair.StopComms(); PortPairs.Remove(expair); } } //next we need to add any new pairs foreach (var newpair in newpairs) { var expair = (from p in PortPairs where p.PairNumber == newpair.PairNumber select p).FirstOrDefault(); if (expair == null) { PortPairs.Add(newpair); } } }
public MainWindow() { try { PortPairs = Com0comSetup.GetPortPairs(); } catch { MessageBox.Show("Unable to parse com0com ports. Is com0com installed?"); Close(); } InitializeComponent(); cboCommsMode.ItemsSource = Enum.GetValues(typeof(CommsMode)); }
public MainWindow() { try { PortPairs = Com0comSetup.GetPortPairs(); } catch (Exception e) { MessageBox.Show("Unable to parse com0com ports. Is com0com installed?"); Close(); throw new Exception("Unable to parse com0com ports.", e); } InitializeComponent(); cboCommsMode.ItemsSource = Enum.GetValues(typeof(CommsMode)); Ini.Default.LoadProperties(this); }