private void lstAvailable_DoubleClick(object sender, EventArgs e) { if (lstAvailable.SelectedItems.Count == 0) { return; } string ldapname = lstAvailable.SelectedItems[0].Tag.ToString(); for (int i = 0; i < lstProps.Items.Count; i++) { if (lstProps.Items[i].SubItems[0].Text == ldapname) { lstProps.Items[i].Selected = true; lstProps.Items[i].EnsureVisible(); lstProps.Focus(); return; } } CustomPropertyConfig cfg = new CustomPropertyConfig(ldapname, map[ldapname], true, 100); cfg.LdapPropertyName = lstAvailable.SelectedItems[0].Tag.ToString(); propertyGrid1.SelectedObject = cfg; propertyGrid1.Focus(); this.propertyConfigs.Add(cfg); ListViewItem item = new ListViewItem(new string[] { ldapname, map[ldapname], "true" }); item.Selected = true; item.EnsureVisible(); item.Tag = cfg; lstProps.Items.Add(item); }
private void btnAdd_Click(object sender, EventArgs e) { CustomPropertyConfig setting = new CustomPropertyConfig(); propertyGrid1.SelectedObject = setting; propertyGrid1.Focus(); this.propertyConfigs.Add(setting); ListViewItem item = new ListViewItem(new string[] { "<new>", "", "true" }); item.Selected = true; item.Tag = ""; lstProps.Items.Add(item); }
private void propertyGrid1_PropertyValueChanged(object s, PropertyValueChangedEventArgs e) { if (lstProps.SelectedItems.Count > 0) { if (s is PropertyGrid && ((PropertyGrid)s).SelectedObject is CustomPropertyConfig) { CustomPropertyConfig cfg = (CustomPropertyConfig)((PropertyGrid)s).SelectedObject; lstProps.SelectedItems[0].SubItems[0].Text = cfg.LdapPropertyName; lstProps.SelectedItems[0].SubItems[1].Text = cfg.DisplayName; lstProps.SelectedItems[0].SubItems[2].Text = cfg.DisplayColumn.ToString(); } } }