- Dynamic Property Grid
- PropertyGrid: DropDown Editor
- PropertyGrid: DropDown Property
- PropertyGrid: CheckBoxList Editor
- PropertyGrid: CheckBoxList Property
You may want to add a dropdown to your property grid. If you do then the below code is what you will need to create the property. You will also need the editor.
Build a DropDown Property Type
public class DropDownList : INotifyPropertyChanged { private dynamic _values; private dynamic selectedItem; public event PropertyChangedEventHandler PropertyChanged; public event PropertyValueChangedEventHandler PropertyValueChanged; public DropDownList(String name, PropertyGrid pg) { PropertyName = name; PG = pg; } private String PropertyName { get; set; } private PropertyGrid PG { get; set; } public dynamic Values { get { return _values; } set { if (value != null) _values = value; } } public string ValueMember { get; set; } public string DisplayMember { get; set; } [Browsable(false)] public dynamic SelectedItem { get { return selectedItem; } set { String oldValue = selectedItem; selectedItem = value; if (PropertyChanged != null) PropertyChanged(this, new PropertyChangedEventArgs(PropertyName)); if (PG != null) { if (PropertyValueChanged != null) PropertyValueChanged(this, new PropertyValueChangedEventArgs(PG.SelectedGridItem, oldValue)); } } } public override string ToString() { return SelectedItem; } }