如何向通过扩展程序提供程序实现的属性添加设计时描述?

问题描述 投票:3回答:1

我知道我可以通过这样做将设计时设计器描述添加到自定义控件的属性:

<Category("Data"), Description("This describes this awesome property")>
Public Property Foo As Boolean
...
End Property

我想要做的是完全相同的事情,但是我的扩展器提供程序组件在我的表单上提供其他控件的属性,以便当我单击属性的值字段时,例如,我会看到我为它。搜索了很多答案但到目前为止没有成功。我是否必须为我的getter和setter方法添加一些内容?

谢谢。

vb.net winforms visual-studio
1个回答
3
投票

Would I have to add something to my getter and setter methods for the property?

是。将DescriptionAttribute添加到Get[PropertyName]方法中。任何其他属性也是如此(它们似乎不适用于Set ...对应物)。

<Category("ListContolExtender"), DisplayName("DisplayMode"),
Description("My very clever description")>
Public Function GetDisplayMode(ctl As Control) As ItemDisplays
    If extData.ContainsKey(ctl) Then
        Return extData(ctl).DispMode
    Else
        Return ItemDisplays.Enabled
    End If
End Function


Public Sub SetDisplayMode(ctl As Control, v As ItemDisplays)
    If extData.ContainsKey(ctl) Then
        extData(ctl).DispMode = v
    Else
        Dim e As New ExtenderData
        e.DispMode = v
        extData.Add(ctl, e)
    End If
End Sub

enter image description here

DisplayNameattribute隐藏了所有的DisplayMode on ListBoxExtender措辞