1

我看到为了取消集合编辑器需要设置类型如下:

public class MyCollectionEditor : CollectionEditor
{
    public MyCollectionEditor(Type type)
        : base(type)
    {
    }

    public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context)
    {
        return UITypeEditorEditStyle.None;
    }
}

并像这样使用它:

[Editor(typeof(MyCollectionEditor), typeof(System.Drawing.Design.UITypeEditor))]
public class MyCollection : CollectionBase, ICustomTypeDescriptor
{
    //...
}

您可以在以下链接中找到它(回答 Alan Seedhouse 的问题):

在 PropertyGrid 中自定义显示集合数据

我的问题是我没有MyCollection.cs在 UI 中定义(但在类库中),因此我不能从CollectionEditor.

还有另一种方法可以做到这一点吗?

4

1 回答 1

0

最后它像这样工作:

public class MyCollectionEditor : UITypeEditor
{ 
    public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context)
    {
        return UITypeEditorEditStyle.None;
    }
}
于 2013-04-10T12:02:55.360 回答