Ich möchte ein Dropdown-Feld mit Strings in einem PropertyGrid für einen ausgewählten Wert anzeigen. In meinem aktuellen Fall muss ich ein Dictionary-Objekt an ein Eigenschaftsraster binden.So zeigen Sie das Dropdown in einer Propertygrid-Bindung für das Dictionary an
Wenn ich eine Klasse binde, ist es einfach, wie folgt mit einem TypeConverter zu tun.
public class Employee
{
public string Name { get; set; }
[TypeConverter(typeof(JobCategoryConverter))]
public int? Category { get; set; }
}
private void Form1_Load(object sender, EventArgs e)
{
Employee emp = new Employee() {Name = "Ray" ,Category = 1 };
propertyGrid1.SelectedObject = emp;
}
Ergebnis wie folgt aussehen.
Jeder Vorschlag, wie ich diesen Drop-Down zeigen kann, wenn ich in ein Wörterbuch zu binden? Ich benutzte this code, um Wörterbuch an propertygrid zu binden.
So sieht der Code wie,
private void Form1_Load(object sender, EventArgs e)
{
IDictionary dict = new Hashtable();
dict["Name"] = "Ray";
dict["Category"] = 1;
DictionaryPropertyGridAdapter dpg = new DictionaryPropertyGridAdapter(dict);
propertyGrid1.SelectedObject = dpg;
}
nett !! genau das, was ich wollte, gibt mir mehr über die TypeConverter-Sache – vinayan