[英]Databindings for label on a winform usercontrol
我正在為一個包含兩個標簽的winform應用程序創建一個用戶控件,一個標簽為標題,另一個標簽需要通過Me.usercontrol1.databindings.add()
綁定到數據源。 我是用戶控件設計的新手,所以我在Internet上搜索了如何為控件創建數據綁定。 我意識到我需要使用ControlBindingsCollection
但我不知道具體如何。
我發現以下代碼並將其添加到我的usercontrol中:
Private bindingContext_ As BindingContext
Private dataBindings_ As ControlBindingsCollection
Public Overrides Property BindingContext() As BindingContext
Get
If bindingContext_ Is Nothing Then
bindingContext_ = New BindingContext()
End If
Return bindingContext_
End Get
Set(ByVal value As BindingContext)
bindingContext_ = value
End Set
End Property
<DesignerSerializationVisibility(DesignerSerializationVisibility.Content)> _
Public Overloads ReadOnly Property DataBindings() As ControlBindingsCollection
Get
If dataBindings_ Is Nothing Then
dataBindings_ = New ControlBindingsCollection(Me)
End If
Return dataBindings_
End Get
End Property
現在我可以設置usercontrol1.databindings
參數,但是顯然缺少一些東西,因為我需要將此綁定中的單個返回值連接到我的usercontrol中的label2.Text
,但我不知道該怎么做。
有沒有人可以幫助我解決我的問題?
提前致謝。
我認為您不需要問題中的代碼即可完成此工作。
嘗試在UserControl中創建一個使用第二個標簽的屬性:
Property LabelData As String
Get
Return Label2.Text
End Get
Set(value As String)
Label2.Text = value
End Set
End Property
然后,您的數據綁定僅映射到該屬性:
myUC.DataBindings.Add("LabelData", testObject, "Text", False, _
DataSourceUpdateMode.OnPropertyChanged)
在本示例中,testObject只是具有Text屬性的簡單類對象,該對象實現了INotifyPropertyChanged接口。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.