在类属性更改时调用sub



我有一个自定义类,它基于TreeNode,上面有一个名为status的Enum属性,设置如下所示。

Public _staus As enumStatus
Public Enum enumStatus
   None
   Yes
   No
End Enum

基本上,当我更改这个属性时,我想调用一个子例程,它只更改项的文本颜色-这个子例程包含在类中,只是一个更新Me.ForeColor属性的select case语句。

如果我对myClass.ChangeColoryBasedOnStatus进行分类,这是正确的,但当属性发生更改时,我如何使它自动执行此操作。

我试过查看事件处理程序,但找不到一个我能理解并能开始工作的解释。

如有任何建议,不胜感激

将字段设为私有字段,并添加一个属性来访问它。在下面的示例中,我假设您使用的是控件中的文本,但您可以将其修改为使用枚举或其他类型。

Private _staus As enumStatus
Public Enum enumStatus
    None
    Yes
    No
End Enum
Public Property Status As enumStatus
    Get
        Return _staus
    End Get
    Set(value As enumStatus)
        _staus = value
        ChangeColor(TextBox1.Text)
    End Set
End Property
Private Sub ChangeColor(SomeText As String)
    Select Case SomeText
        Case "" : Me.ForeColor = Color.Black
        Case "Stop" : Me.ForeColor = Color.Red
        Case "Go" : Me.ForeColor = Color.Green
    End Select
End Sub

相关内容

  • 没有找到相关文章

最新更新