Как добавить редактируемый combobox в систему.Окна.Формы.Компонент PropertyGrid?
у меня есть System.Windows.Forms.PropertyGrid
с различными типами значений. Для конкретного элемента, я хочу показать список полезное значения на выбор. Пользователь также может ввести новое значение. Что-то похожее на традиционный выпадающий список combobox:
пока у меня есть свой System.ComponentModel.TypeConverter
, но я не могу понять, как получить оба раскрывающихся списка с предлагаемыми значениями и возможность редактировать значение напрямую. Пожалуйста, помогите!
2 ответов
вы можете сделать это, реализовав свой собственный редактора uitypeeditor.
рекомендую почитать получение максимальной отдачи от .NET Framework PropertyGrid Control. В частности, раздел под названием предоставление пользовательского интерфейса для ваших свойств пошаговое руководство по созданию пользовательского элемента управления для определенного свойства.
Это легко. В своем собственном StringConverter
return false
на GetStandardValuesExclusive
и это все.
смотрите здесь:
internal class cmbKutoviNagiba : StringConverter
{
public override bool GetStandardValuesExclusive(ITypeDescriptorContext context)
{
return FALSE; // <----- just highlight! remember to write it lowecase
}
public override TypeConverter.StandardValuesCollection GetStandardValues(
ITypeDescriptorContext context)
{
string[] a = { "0", "15", "30", "45", "60", "75", "90" };
return new StandardValuesCollection(a);
}
public override bool GetStandardValuesSupported(ITypeDescriptorContext context)
{
return true;
}
}
я писал FALSE
заглавными буквами, просто чтобы вам было легче увидеть его. Пожалуйста, положите его маленькими буквами:)