1

Control 或 UserControl 的 Name 属性有什么特别之处,导致它(Name)在 Visual Studio 的属性网格中显示为“”?

4

1 回答 1

4

查看这篇关于 .NET 中的设计时属性的文章。具体来说,我认为您正在寻找Browsable在 Visual Studio 的设计时属性对话框中启用属性的属性。

如果你有一个名为 的属性Name,你可以像这样声明它:

[Browsable(true)]
public string Name { /*...*/ }

您可以设置更多属性,例如和Description,如果您打算向其他开发人员展示您的控件,这将派上用场。DefaultValueCategory

编辑:要获得您想要的效果,请同时使用BrowsableParenthesizePropertyName属性:

[Browsable(true)]
[ParenthesizePropertyName(true)]
public string Name { /*...*/ }

(感谢 Ksempac 对此的评论。)

由于您没有指定使用的是 VB 还是 C#,所以在 VB 中也是这样:

<Browsable(true)> _
<ParenthesizePropertyName(true)> _
Public Property Name(Value As String) As String
' ...
End Property

编辑2:

我想您想知道为什么首先要用括号括住您的财产,或者财产名称周围有括号意味着什么。

你可以在这里找到答案:

带括号的属性显示在窗口顶部 - 如果列表按类别分组,则显示在其类别顶部

基本上,如果一个属性很重要,你希望它出现在排序列表的顶部,所以你用括号括起来表示这一点。

于 2009-06-23T12:53:52.257 回答