在我的应用程序中,我需要从子窗体中的一个事件设置MDIParent窗体中的TextBox控件的值
我试过了;
public string textboxvalue {
get { return textBox2.Text; }
set { textBox2.Text = value; } }
在MDIParent中并在子表单事件中使用以下代码
MDIParent1 mdiparent = new MDIParent1();
mdiparent.textboxvalue = webBrowser1.Url.ToString();
这不起作用;请帮助...
答案 0 :(得分:0)
这不起作用,因为您在父表单的新实例上设置文本值。这样做 -
创建子类,使其包含所有者表单,然后设置所有者文本值将解决您的目的。
public class MDIParent : Form
{
public void CreateChild()
{
ChildForm child = new ChildForm(this);
}
public string textboxvalue
{
get { return textBox2.Text; }
set { textBox2.Text = value; }
}
}
public class ChildForm : Form
{
private Form _frmParent;
public ChildForm(Form parent)
{
_frmParent = parent;
// IntializeComponent();
}
public void SetText()
{
if (_frmParent != null)
{
_frmParent.textboxvalue = webBrowser1.Url.ToString();
}
}
}
答案 1 :(得分:0)
在子表单中添加此代码
((MDIParent1)this.MdiParent).textboxvalue = webBrowser1.Url.ToString();