/// <summary> /// Updates the list of configuration targets included/excluded in a set /// </summary> private void UpdateSetTargets() { lvTargetsInSet.Items.Clear(); lvTargetsNotInSet.Items.Clear(); if (lvSets.SelectedItems.Count > 0) { int curSetID = (int)lvSets.SelectedItems[0].Tag; ConfigDS.SetTargetsDataTable targets = new ConfigDS.SetTargetsDataTable(); // list targets included current set setTargetsTA.FillTargetsInSet(targets, curSetID); lvTargetsInSet.BeginUpdate(); try { foreach (var item in targets) { ListViewItem lvi = new ListViewItem(new string[] { item.TargetGroup, item.TargetName }); lvi.Tag = item.ConfigTargetID; lvTargetsInSet.Items.Add(lvi); } } finally { lvTargetsInSet.EndUpdate(); lvTargetsInSet.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent); lvTargetsInSet.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize); } if (lvTargetsInSet.Items.Count > 0) { lvTargetsInSet.Items[0].Selected = true; } // list targets not in set, but matchin the specified group filter setTargetsTA.FillTargetsNotInSet(targets, curSetID); lvTargetsNotInSet.BeginUpdate(); try { foreach (var item in targets) { if (item.TargetGroup == cbxTargetGroupFilter.Text) { ListViewItem lvi = lvTargetsNotInSet.Items.Add(item.TargetName); lvi.Tag = item.ConfigTargetID; } } } finally { lvTargetsNotInSet.EndUpdate(); lvTargetsNotInSet.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent); lvTargetsNotInSet.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize); } if (lvTargetsNotInSet.Items.Count > 0) { lvTargetsNotInSet.Items[0].Selected = true; } } RefreshTargetList(); }
/// <summary> /// Refreshes the selectable configuration target list depending on the selected configuration set /// </summary> private void RefreshTargetList() { if (cbxConfigSets.SelectedItem != null) { ConfigDS.SetTargetsDataTable setTargets = new ConfigDS.SetTargetsDataTable(); int selSetID = ((ConfigDS.ConfigSetsRow)cbxConfigSets.SelectedItem).ConfigSetID; setTargetsTA.FillTargetsInSet(setTargets, selSetID); cbxConfigSetTargets.DataSource = setTargets.ToList(); ShowConfiguration(); } }