Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在属性网格中编辑数组/列表_C#_Arrays_List_Propertygrid - Fatal编程技术网

C# 在属性网格中编辑数组/列表

C# 在属性网格中编辑数组/列表,c#,arrays,list,propertygrid,C#,Arrays,List,Propertygrid,我在属性网格中有一个列表和一个数组 当在expander(+)中打开的阵列可以编辑它时 但当列表在expander中打开时,无法对其进行编辑 他们之间有什么区别 我看到这个问题: 为了防止扩展器进行编辑,将数组转换为列表 为什么在数组中可以编辑,而列表中不能编辑 我怎样才能改变这个?(或者不能?根据我的建议,最好使用列表,因为列表是自动实现的数组列表,与我们需要分配的数组相比,它的大小是灵活的。更多信息请访问 我找到了您无法编辑的原因 因为列表中的每个值都是一个对象,所以不能对其进行编辑 即使

我在
属性网格中有一个列表和一个数组

当在expander(
+
)中打开的阵列可以编辑它时

但当列表在expander中打开时,无法对其进行编辑

他们之间有什么区别

我看到这个问题:

为了防止扩展器进行编辑,将数组转换为列表

为什么在数组中可以编辑,而列表中不能编辑


我怎样才能改变这个?(或者不能?

根据我的建议,最好使用列表,因为列表是自动实现的数组列表,与我们需要分配的数组相比,它的大小是灵活的。更多信息请访问
我找到了您无法编辑的原因

因为列表中的每个值都是一个
对象
,所以不能对其进行编辑

即使我从对象中输入了一个值


我在expander中的列表中打开了该对象并在其中进行了编辑。

答案在链接的问题中。。。有一个不同的类型转换器用于阵列。。。检查哪一个。。。在reflector中打开它,看看它是如何完成的。。。写下你自己的清单。。。注册它。。。done@DarkSquirrel42,对于我的列表,我在expander的
[TypeConverter(typeof(ExpandableObjectConverter))]
中使用。你知道另一个能帮我的转换器吗?(在数组中没有转换器,默认情况下是这样)数组正好使用此转换器。。。看起来它无法处理列表。。。您可以子类化/构建自己的@黑色怪癖42。但是,我要将列表转换为什么才能进行编辑呢?到数组?具体是什么类型的列表?你们有一些代码吗?但列表不能在属性网格的扩展器中编辑,你们读了我的问题了吗?试试看这里