У меня есть PropertyGrid
(winform), который содержит список позиций.Редактировать список в PropertyGrid
private ValuesCollection _position1 = new ValuesCollection();
public ValuesCollection Position1
{
get { return _position1; }
set
{
_position1 = value;
}
}
ValuesCollection этот класс, который я сделал со следующей статьей: Customized display of collection data in a PropertyGrid
Каждый объект в списке принадлежит к классу значения:
[TypeConverter(typeof(ExpandableObjectConverter))]
public class Values
{
[Browsable(false)]
public string Name { get; set; }
public virtual double Value { get; set; }
public Values()
: this(null, 0)
{
}
public Values(string name, double value)
{
Name = name;
Value = value;
}
public override string ToString()
{
return Value.ToString();
}
}
Моя проблема заключается в том, что я не может редактировать на первом уровне, когда список открывается, потому что каждый элемент является объектом.
Я должен открыть еще один уровень (открыть сам объект) и редактировать там.
Я хочу изменить на первом уровне, а не открыть любой объект в одиночку. Я не нашел способ сделать это, у кого-нибудь есть идея?
(постскриптум Я не хочу использовать Collection Editor
.)
Покажешь, как это сделать? –
позвольте мне Google, что для вас ... http://blog.csharphelper.com/2010/05/07/make-a-type-converter-to-let-the-propertygrid-display-and-edit-compound- свойства-в-c.aspx – DarkSquirrel42