Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/284.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# 通过winform designer中的自定义编辑器编辑时,StringDictionary未正确序列化_C#_.net_Winforms_Windows Forms Designer - Fatal编程技术网

C# 通过winform designer中的自定义编辑器编辑时,StringDictionary未正确序列化

C# 通过winform designer中的自定义编辑器编辑时,StringDictionary未正确序列化,c#,.net,winforms,windows-forms-designer,C#,.net,Winforms,Windows Forms Designer,我正在使用StringDictionary属性创建用户控件。我正在控件属性网格中显示此属性的自定义编辑器,代码如下: public partial class SomeUserControl : UserControl { [DesignerSerializationVisibility(DesignerSerializationVisibility.Content)] [Editor("System.Diagnostics.Design.StringDictionaryEdit

我正在使用StringDictionary属性创建用户控件。我正在控件属性网格中显示此属性的自定义编辑器,代码如下:

public partial class SomeUserControl : UserControl
{
    [DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
    [Editor("System.Diagnostics.Design.StringDictionaryEditor,System.Design", "System.Drawing.Design.UITypeEditor, System.Drawing")]
    public StringDictionary Items { get; set; }

    public SomeUserControl()
    {
        Items = new StringDictionary();
        InitializeComponent();
    }
}
单击属性时,设计器将正确显示在winform designer中。但是,当我编辑这些值时,它们不会在表单中序列化

我错过什么了吗?或者StringDictionaryEditor不支持它


非常感谢。

StringDictionary没有实现DesignerSerializationVisibility所需的IListICollection。工作内容。

StringDictionary没有实现DesignerSerializationVisibility所需的IListICollection。内容到工作。

如果您修改了项,然后更改了另一个属性,从而导致它重新生成代码,那么它工作吗?不,它不工作。谢谢你的主意!如果您修改了这些项,然后更改了另一个属性,从而导致它重新生成代码,那么它是否起作用?不,它不起作用。谢谢你的主意!是否有一种替代StringDictionary的内置编辑器,如NameValueCollection?如果有,匹配的编辑器会是什么?是否有一种内置编辑器(如NameValueCollection)替代StringDictionary的方法?如果有,匹配的编辑器是什么?