1

我声明了一个自定义属性“填充”

    Public Overloads Property Padding() As Padding
    Get
        Return (pad)
    End Get
    Set(ByVal Value As Padding)
        pad = Value
        RecalculateCharacterSize()
        Me.Refresh() 
    End Set
End Property

并在设计时工作。但是当我运行表单时,这个属性被重置为 0,当返回到设计编辑器时也为零。与最初的“Padding”属性名称存在冲突,因为如果我更改为“Padding2”可以正常工作(我可以更改我的名字)但最初的名称最适合:)

非常感谢您的建议,我敢肯定这里有一些愚蠢的东西

PS。我用这些装饰,但仍然没有任何效果

<EditorBrowsable(EditorBrowsableState.Always), Browsable(True), Bindable(True), _
DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)> _

有什么想法吗 ?

4

2 回答 2

1

非常感谢马克,工作:)

Public Shadows Property Padding() As Padding
    Get

        Return (pad)
    End Get
    Set(ByVal Value As Padding)
        pad = Value
        MyBase.Padding = pad ' ---> this had to be added 
        RecalculateCharacterSize()
        Me.Refresh()
    End Set
End Property
于 2012-12-03T01:01:38.147 回答
0

如果您只是想添加到现有的Padding属性,请尝试这样的事情。

Public Shadows Property Padding() As Padding
    Get
        Return (MyBase.Padding)

    End Get
    Set(ByVal Value As Padding)
        MyBase.Padding = Value
        pad = Value
        RecalculateCharacterSize()
        Me.Refresh()
    End Set
End Property
于 2012-12-03T00:39:16.210 回答