即时通讯尝试学习如何使用WPF数据绑定。VB.NET WPF数据绑定在控制属性(如何更新)
我有一个控件,我想改变控件中属性的值。
<somecontrol Value="{Binding GoodRange}">
我创建的主窗口类的属性,如下所示:
Public Property GoodRange As Double
Get
Return m_GoodRange
End Get
Set(value As Double)
m_GoodRange = value
End Set
End Property
Private m_GoodRange As Double
里面的主窗口类添加以下到子新()
Public Sub New()
InitializeComponent()
GoodRange = 3000
Me.DataContext = Me
End Sub
到目前为止好,hwen我启动程序,将值3000传递给控件。现在
,在运行时我想更改的属性,例如当用户点击一个按钮,或定时事件例如:
Private Sub UpdateValue()
GoodRange = 2800
End Sub
当我这样做,在控制值不更新。即时通讯试图了解我如何触发控制更新。
我已经搜索了4个小时尝试尝试和理解,我发现并尝试了很多谷歌的答案,但通常这些答案是自定义控件或自定义类或使用.datacontex方法,我不能使用多个财产将需要改变。
我会很乐意为您提供任何帮助。
谢谢/
您必须实现属性更改通知。这通常通过实现INotifyPropertyChanged接口来完成。但请注意,在视图类中实现此功能的情况并不常见(例如,您的MainWindow)。您通常会创建一个单独的类来实现它,并定义绑定的源属性。然后,将该类的一个实例分配给视图的DataContext。这就是所谓的视图模型。在网络上搜索MVVM。 – Clemens