我有一个列表PropertyGrid
和一个数组。编辑数组/列表属性网格
当扩展器(+
)打开阵列可以对它进行编辑,
但是当列表扩展打开不能编辑它。
他们有什么区别?
我看到了这样一个问题:
Modify default behaviour of PropertyGrid and TypeConverterAttribute
,为了防止编辑由膨胀开启数组列表。
为什么在数组中可以编辑,并且列表不能被编辑?
我该如何改变这种情况? (或不能?)
我有一个列表PropertyGrid
和一个数组。编辑数组/列表属性网格
当扩展器(+
)打开阵列可以对它进行编辑,
但是当列表扩展打开不能编辑它。
他们有什么区别?
我看到了这样一个问题:
Modify default behaviour of PropertyGrid and TypeConverterAttribute
,为了防止编辑由膨胀开启数组列表。
为什么在数组中可以编辑,并且列表不能被编辑?
我该如何改变这种情况? (或不能?)
我发现你为什么不能修改的原因,
因为在列表中的每个值是object
你不能编辑它,
即使我把GetValue
一个来自对象的价值。
我在扩展器的列表中打开了对象并在那里编辑。
因为我的建议,最好使用List,因为List是自动实现的数组列表,它的大小比较灵活,我们需要为它分配它。了解更多 http://www.dotnetperls.com/list
但是列表不能在属性网格的扩展器中编辑,你读过我的问题了吗? – 2013-04-11 08:23:26
请尝试看看这里http://www.codeproject.com/Articles/4448/Customized-display-of-collection-data-in-a-Propert – 2013-04-11 09:02:31
我用这个代码(见注释) – 2013-04-11 09:08:35
答案在链接的问题...有一个不同的typeconverter用于阵列...检查哪一个...打开它在反射器看它是如何完成的...编写自己的列表 .. 。注册它...完成 –
DarkSquirrel42
2013-04-11 06:20:15
@ DarkSquirrel42,对于我的列表,我在'[TypeConverter(typeof(ExpandableObjectConverter))]''中使用了扩展器。你知道另一个可以帮助我的转换器吗? (在阵列中没有转换器,这是默认情况下) – 2013-04-11 06:29:18
数组正是使用这个转换器...看起来像它不能处理列表...你可以继承/建立自己的... http://msdn.microsoft。 com/en-gb/library/ayybcxe5.aspx – DarkSquirrel42 2013-04-11 06:38:38