2013-02-08 78 views
0

我想要使用Windows窗體設計器將屬性綁定到控件。使用Windows窗體設計器將屬性綁定到控件

例如,我有這樣的組成:

class MyComponent:Component, INotifyPropertyChanged { 
    public event PropertyChangedEventHandler PropertyChanged; 
    private string _strProperty; 
    [Bindable(true)] 
    public string StrProperty { 
     get{ 
     return _strProperty; 
     } 
     set { 
     if (_strProperty != value) { 
      _strProperty = value; 
      if (PropertyChanged != null) PropertyChanged(this, new PropertyChangedEventArgs("StrProperty")); 
     } 
     } 
    } 
    } 

我從工具箱拖曳此組件拖放在窗體上。組件名稱是myComponent1。在同一個表單上我有一個名爲textBox1的TextBox控件。
現在我想綁定textBox1.Text屬性到myComponent1.StrProperty屬性。 我知道我可以在代碼中寫:

textBox1.DataBindings.Add(new Binding("Text", myComponent1, "StrProperty")); 

,但我想用設計來達到同樣的效果。可能嗎?我應該使用BindingSource嗎?

回答

2

不,您只能在WinForm中使用代碼隱藏綁定屬性。但是,您可以在不使用C#代碼的WPF中綁定數據,但使用XAML。

1

由於您的問題是,3歲的我不知道這個應用到你的Visual Studio版本的時間,但對別人感興趣,現在這裏是你如何能做到這一點:

  • 選擇textBox1的
  • 擴大(數據綁定)在屬性網格
  • 文本,進入myComponent1 - StrProperty
  • 進入,做

這麼簡單。如果您檢查生成的設計器代碼,您將看到按照您通過代碼完成的創建的新綁定。

相關問題