是否可以隐藏PropertyGrid中的枚举值?

Mic*_*kus 3 .net c# propertygrid enums winforms

我正在使用PropertyGrid控件并使用SelectedObject属性来显示数据PropertyGrid.我的网格中的一些属性是枚举类型.我希望能够做的是隐藏用户枚举中的一些选择.以下面的示例:我想隐藏用户的"错误"枚举.有没有办法做到这一点?

[TypeConverter(typeof(PropertySorter))]
public class Settings
{
    public enum FooType { Type1, Type2, Type3, Type4, Error };
    private FooType fakeProperty = FooType.Type1;

    public FooType FakeProperty
    {
        get { return fakeProperty; }
        set { // Do Something }
    }
}
Run Code Online (Sandbox Code Playgroud)

我正在PropertyGrid通过调用显示数据:

myPropertyGrid.SelectedObject = mySettings;
Run Code Online (Sandbox Code Playgroud)

Mar*_*ell 8

可见PropertyGrid度通常由[Browsable(...)].所以你可以添加[Browsable(false)]你的Error选项.例如:

public enum Foo {
    A,
    [Browsable(false)] B
    C
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述