c# - 以编程方式隐藏 PropertyGrid 中的属性

标签 c# .net windows propertygrid

我希望根据用户在下拉菜单中所做的选择来隐藏/显示属性。我正在很好地处理事件,但实际上无法使正确的属性消失。我在网上找到的解决方案主要来自 2005 年,而且我对此经验很少,我认为如果隐藏属性这么难,我一定是做错了什么。

到目前为止,我已尝试在处理事件后访问该属性,但 ReadOnly 和 IsBrowsable 属性是只读的。

propertygrid 有一个 BrowsableAttributes 属性,它接受一个属性列表,但只能消极地工作,不能做或 - 只能做和。提供一个属性集合;类别 - '测试' 和 isbrowsable - 真;返回匹配两者的那些,并且由于我无法提供多个 AttributeCollections,所以我无法使搜索足够具体以隐藏必要的,同时让其他的可见。

在过去的几个小时里,我一直在用头撞墙,认为一定有更简单的方法。

最佳答案

您是否尝试过将此属性应用于属性:

[Browsable(false)]
public object SomeProperty{
}

这样 SomeProperty 就不会出现在 propertygrid 上。

关于c# - 以编程方式隐藏 PropertyGrid 中的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2319914/

相关文章:

c# - webservice DateTime 意外值?

C# 跳过第一行但希望它跳过最后一行

c# - 如何从 WebClient Response 解析编码?

windows - 我可以通过 cmd.exe 在 Windows 上为 git 设置自动完成吗?

c++ - 将原始数据输出到扬声器

c# - 认购期满了该如何限制?

c# - IProgress<T> 不会在当前上下文中触发事件

c# - 在 C# 中为不同的类使用类型化变量

c# - 在 ASP.NET Web 表单中使用 .NET 4.5 HttpClient

c++ - 从 Windows 二进制文件中删除 msvcp90d.dll 依赖项