我希望根据用户在下拉菜单中所做的选择来隐藏/显示属性。我正在很好地处理事件,但实际上无法使正确的属性消失。我在网上找到的解决方案主要来自 2005 年,而且我对此经验很少,我认为如果隐藏属性这么难,我一定是做错了什么。
到目前为止,我已尝试在处理事件后访问该属性,但 ReadOnly 和 IsBrowsable 属性是只读的。
propertygrid 有一个 BrowsableAttributes 属性,它接受一个属性列表,但只能消极地工作,不能做或 - 只能做和。提供一个属性集合;类别 - '测试' 和 isbrowsable - 真;返回匹配两者的那些,并且由于我无法提供多个 AttributeCollections,所以我无法使搜索足够具体以隐藏必要的,同时让其他的可见。
在过去的几个小时里,我一直在用头撞墙,认为一定有更简单的方法。
最佳答案
您是否尝试过将此属性应用于属性:
[Browsable(false)] public object SomeProperty{ }
这样 SomeProperty
就不会出现在 propertygrid 上。
关于c# - 以编程方式隐藏 PropertyGrid 中的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2319914/