} // menuItemChannelRefreshList_Click_Implementation private void menuItemChannelVerify_Click_Implementation(object sender, EventArgs e) { int timeout; MulticastScannerOptionsDialog.ScanWhatList list; IEnumerable <UiBroadcastService> whatList; if ((MulticastScanner != null) && (!MulticastScanner.IsDisposed)) { MulticastScanner.Activate(); return; } // if using (var dialog = new MulticastScannerOptionsDialog()) { var result = dialog.ShowDialog(this); BasicGoogleTelemetry.SendScreenHit(this); if (result != DialogResult.OK) { return; } timeout = dialog.Timeout; list = dialog.ScanList; } // using // filter whole list, if asked for switch (list) { case MulticastScannerOptionsDialog.ScanWhatList.ActiveServices: whatList = from service in BroadcastDiscovery.Services where service.IsInactive == false select service; break; case MulticastScannerOptionsDialog.ScanWhatList.DeadServices: whatList = from service in BroadcastDiscovery.Services where service.IsInactive == true select service; break; default: whatList = BroadcastDiscovery.Services; break; } // switch MulticastScanner = new MulticastScannerDialog() { Timeout = timeout, BroadcastServices = whatList, }; MulticastScanner.ChannelScanResult += MulticastScanner_ChannelScanResult; MulticastScanner.Disposed += MulticastScanner_Disposed; MulticastScanner.ScanCompleted += MulticastScanner_ScanCompleted; MulticastScanner.Show(this); } // menuItemChannelVerify_Click_Implementation
} // menuItemChannelVerify_Click_Implementation private void MulticastScanner_Disposed(object sender, EventArgs e) { MulticastScanner = null; } // MulticastScanner_Disposed