Я пытаюсь заставить UltraGrid использовать пользовательский редактор, установленный через атрибут редактора. Однако он, кажется, игнорирует настройку и просто использует ее внутренний редактор. Вот мой код:
public class DialogEditor : UITypeEditor
{
public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context)
{
return UITypeEditorEditStyle.Modal;
}
public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value)
{
MessageBox.Show("Testing 1,2,3");
return base.EditValue(context, provider, value);
}
}
public class TestContainer
{
public TestContainer(int id, string name)
{
Id = id;
Name = name;
}
[Editor(typeof(DialogEditor), typeof(UITypeEditor))]
public int Id { get; set; }
public string Name { get; set; }
public override string ToString()
{
return string.Format("{0} : {1}", Id, Name);
}
}
Проверено через:
var data = new List<object>
{
new TestContainer(1, "one"),
new TestContainer(2, "two"),
};
ultraGrid1.DataSource = data;