private void BuildUsbList() { ManagementObjectCollection searchObjs = new ManagementObjectSearcher("select * from Win32_DiskDrive where InterfaceType = 'USB'").Get(); App.Current.Dispatcher.Invoke((Action) delegate { UsbList.Clear(); if (searchObjs.Count > 0) { foreach (ManagementObject usb in searchObjs) { try { var u = new UsbModel(); u.UsbCaption = usb["Caption"].ToString(); u.UsbSerialNumber = usb["SerialNumber"].ToString(); u.UsbChecked = false; UsbList.Add(u); UsbListView.ItemsSource = UsbList; } catch (Exception e) { string err = e.Message; } } } CollectionViewSource.GetDefaultView(UsbList).Refresh(); }); }
private void Checkbox_Checked(object sender, RoutedEventArgs e) { try { selectedUsb = UsbList.FirstOrDefault(x => x.UsbChecked == true); //UsbList.Select(x => { x.UsbChecked = false; return x; }); //var sel = (System.Windows.Controls.CheckBox)sender; //selectedUsb = UsbList.FirstOrDefault(x => x.UsbCaption == sel.Content.ToString()); //selectedUsb.UsbChecked = true; } catch (Exception ex) { string junk = ex.Message; } }