Mam datagridview z informacjami o konkurentach. Wyświetlam właściwości każdego kontrolera w PropertyGrid. Chcę, aby niektóre z tych właściwości (np. Degree, City, Institute) były skrzynkami referencyjnymi z wartościami pobranymi z bazy danych. W tym celu mogę utworzyć niestandardową TypeConvertor jak tenNiestandardowy TypeConverter ze zmienną wartością StandardValues
class DegreeTypeConverter : StringConverter
{
static string[] _valueList = { "Bachelor", "Master", "Student" };
public override bool GetStandardValuesSupported(
ITypeDescriptorContext context)
{
return true;
}
public override bool GetStandardValuesExclusive(
ITypeDescriptorContext context)
{
return true;
}
public override StandardValuesCollection GetStandardValues(
ITypeDescriptorContext context)
{
return new StandardValuesCollection(_valueList);
}
}
[TypeConverter(typeof(DegreeTypeConverter))]
public string Degree
{
get { return _degree; }
set { _degree = value; }
}
Ale chcę, aby ta valueList z bazy danych i mam 14 takich właściwości więc jakiś uniwersalny konwerter byłoby znacznie lepiej niż 14 konwerterów z tą tylko różnicą: valueList. Czy jest możliwe utworzenie TypeConvertera ze zmienną valueList (na przykład przekazaną do TypeConverter jako parametr w konstruktorze)? A może istnieje inny sposób, aby mieć w PropertyGrid dropbox z listą wartości zmiennych? Mam nadzieję, że było wystarczająco jasne Thnx z góry