1
我發展我自己的「MyTextBox」控制WinForms。設計時數據綁定到子控件的屬性
public class MyTextBox:UserControl
{
TextBox textBox;
Button button;
public MyTextBox()
{
this.textBox = new TextBox();
this.button = new Button();
this.button.Click += button_Click;
this.Controls.Add(this.textBox);
this.Controls.Add(this.button);
}
public TextBox TextBox
{
get
{
return this.textBox;
}
}
}
現在在設計時,我把「MyTextBox」表單上。在Designer的PropertyGrid我可以看到myTextBox1控件的「TextBox」屬性在子網格中可見。
我還在數據綁定表單中添加了一個「BindingSource」。
子網格提供了用於綁定的「Text」屬性,並且我將它綁定到bindingSource1,正如我們通常綁定texbox的「Text」屬性一樣。我期待着由設計者生成以下代碼:
this.myTextBox1.TextBox.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.bindingSource1, "FullName"));
的演練上面是不會放棄這種效果。我想知道是否有辦法做到這一點。我的目的是在設計時數據綁定TextBox的「文本」屬性,由MyTextBox拼接。
的Theres一個規則:
那麼這種方式綁定你的用戶控件的
TextBox
的Text
財產設計師:不要使用它。如果你想使用數據綁定使用WPF。 – user3292642老實說,我同意你的看法。自從我開始項目開發以來,我正在受到折磨:)。但無論如何,我需要一個解決方案 – Bahrom
不要放棄太快。數據綁定是Windows Forms最有用的功能之一。 –