private void PrepareData() { var items = new List <ListBoxItem>(); foreach (var device in AuthorizationDevices) { items.Add(new ListBoxItem() { ID = device.DeviceID, DisplayName = device.Name, Description = device.Remark, IsSelected = OwnedDevices.Select(d => d.DeviceID).Contains(device.DeviceID) }); } DeviceListBoxSource = items; if (ID == 0) { Title = "新增部门"; } else { Title = "修改部门"; } }
private void UpdateSelectedDevices() { var selectedDepartmentDevices = new List <DepartmentDevice>(); var selectedDeviceItem = DeviceListBoxSource.FindAll(d => d.IsSelected); foreach (var item in selectedDeviceItem) { var existDevice = OwnedDevices.FirstOrDefault(d => d.DeviceID == item.ID); if (existDevice != null) { selectedDepartmentDevices.Add(existDevice); } else { selectedDepartmentDevices.Add(new DepartmentDevice() { DepartmentID = ID, DeviceID = item.ID }); } } OwnedDevices = selectedDepartmentDevices; }