C# 如何使Browsable(false)在IDE中实际隐藏属性

C# 如何使Browsable(false)在IDE中实际隐藏属性,c#,.net,winforms,components,C#,.net,Winforms,Components,下午好 我创建了一个具有布尔属性的用户定义组件。我希望Visual studio不要在属性窗口上显示它。我在谷歌上搜索了很多次,大家的共识似乎是尝试使用Browsable/BrowsableAttribute属性描述符 Visual Studio似乎完全忽略了此属性。我试着构建我所有的项目,重置工具箱却没有用。请帮忙 感谢和问候, -艾伦 它确实是[可浏览的]。省略setter是另一种方式,在这种情况下是有意义的 我猜您遇到的真正问题是存储在工具箱程序集文件夹中的该控件的旧副本。如果您自己使用“

下午好

我创建了一个具有布尔属性的用户定义组件。我希望Visual studio不要在属性窗口上显示它。我在谷歌上搜索了很多次,大家的共识似乎是尝试使用Browsable/BrowsableAttribute属性描述符

Visual Studio似乎完全忽略了此属性。我试着构建我所有的项目,重置工具箱却没有用。请帮忙

感谢和问候, -艾伦


它确实是[可浏览的]。省略setter是另一种方式,在这种情况下是有意义的

我猜您遇到的真正问题是存储在工具箱程序集文件夹中的该控件的旧副本。如果您自己使用“选择项”、“浏览”选项卡将控件添加到工具箱中,则会创建这样的副本。您可能正在更新本地副本,但不是工具箱版本


我需要在这一点上挥手,我知道它会发生,但从来没有发现它是如何发生的。这对我个人来说从未出错,但我始终确保让工具箱自动填充自己,而不是显式添加控件。如果您确实像这样添加了它,那么从删除它开始。在工具箱中的项上单击鼠标右键,然后选择“删除”。副本存储在c:\users\yourname\appdata\local\microsoft\visualstudio\x.x\projectassemblies中

在IDE将属性从false编辑为true时甚至不会引发异常@Alan-为什么不将其设置为只读属性?您使用的是Visual Studio的哪个版本?我已经尝试将其设置为只读属性[readonly(true)]以及[ReadOnlyAttribute(true)]。也不起作用:(Visual Studio 2008(很抱歉省略了它)起作用了——我只是删除了整个目录(太过复杂,找不到确切的有问题的文件)。此外,我强烈命名了我的控件库,以便我可以在工具箱上重新检查版本(工具提示显示版本)。简而言之——1)强烈命名控件/组件库&重新生成,2)关闭visual studio,3)关闭该目录,4)打开Visal studio,5)重置工具箱。
[Browsable(false)]  // I have also tried [BrowsableAttribute(false)]
public bool IsBusy
{
    get
    {
        return _isBusy;
    }
    set
    {
        throw new InvalidOperationException("");
    }
}