如何将值从窗体传递到UserControl?

时间:2019-11-03 19:03:27

标签: c# winforms

我需要将一个值从Form传递给UserControl。

我试图: 1.(并且我将basketBox公开) 形式:

UserControlBasket us1 = new UserControlBasket();
public void button1_Click(object sender, EventArgs e)
{
    us1.basketBox.Text = g1.Name;
}

2。 形式:

UserControlBasket us1 = new UserControlBasket();
public void button1_Click(object sender, EventArgs e)
{
    us1.Txt = g1.Name;
}

UserControl:

public string Txt
{
    get { return basketBox.Text; }
    set { basketBox.Text = value; }
}

3。而且我尝试这样做: Pass value from Usercontrol to Form

我希望在basketBox(这是一个TextBox)中,它将是g1.Name中的值;

3 个答案:

答案 0 :(得分:1)

我只需添加一个Controls.Add(us1)即可解决我的问题。

答案 1 :(得分:1)

我只是在这里总结我的回答(来自@Jimi)。根据设计原则,数字2和3解决方案都是可以接受和正确的。似乎在这里访问了用户控制的另一个对象,而不是使用放置from的对象。

答案 2 :(得分:0)

对于您而言,最好使用附在页面上的文本框,而不要使用UserControl。