C# 通过winform designer中的自定义编辑器编辑时,StringDictionary未正确序列化
我正在使用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
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所需的IList和ICollection。工作内容。StringDictionary没有实现DesignerSerializationVisibility所需的IList和ICollection。内容到工作。如果您修改了项,然后更改了另一个属性,从而导致它重新生成代码,那么它工作吗?不,它不工作。谢谢你的主意!如果您修改了这些项,然后更改了另一个属性,从而导致它重新生成代码,那么它是否起作用?不,它不起作用。谢谢你的主意!是否有一种替代StringDictionary的内置编辑器,如NameValueCollection?如果有,匹配的编辑器会是什么?是否有一种内置编辑器(如NameValueCollection)替代StringDictionary的方法?如果有,匹配的编辑器是什么?