将Form的值传输到Usercontrol

时间:2013-05-31 16:04:55

标签: c# winforms user-controls

我创建了一个用户控件并向其添加了一个文本框。在我的Windows窗体中,我添加了我创建的用户控件并添加了一个文本框和一个按钮。如何将我从Form的文本框输入的文本复制到Usercontrol的文本框,反之亦然。就像是 usercontrol.textBox1.text = textBox1.text

4 个答案:

答案 0 :(得分:1)

您可以向用户控制代码添加委托给TextBox的Text属性的公共属性:

public string MyTxtBoxValue { get { return this.txtBox.Text; } }

当然,如果需要的话,你也可以有一个制定者。

然而,您不想做的是将整个TextBox公开。这是有缺陷的。

答案 1 :(得分:0)

有多种方法可以访问用户控件文本框数据。实现此目的的一种方法是将用户控件上的文本框暴露在可以通过其加载的表单访问的范围内。另一种方法是在用户控件的按钮单击上引发事件并在父窗体上订阅它。

答案 2 :(得分:0)

虽然在创建自定义用户控件时会继承某些内容,但大多数情况下您必须定义自己的属性。 (比如文字值等)。

我会看看这个: http://msdn.microsoft.com/en-us/library/6hws6h2t.aspx 祝你好运!

答案 3 :(得分:0)

从Form到Usercontrol

Form Code
public string ID
{
    get { return textBox1.Text; }
}

private void textBox1_TextChanged(object sender, EventArgs e)
{
    userControl11.ID = ID;
}

Usercontrol Code
public string ID
{
    set { textBox1.Text = value; }
}