C# MDI多窗体在各个子窗体中使用父窗体对象?
你好!我最近做C#MDI多窗体程序类似photoshop,实现点击form1的菜单栏弹出form2窗体浏览图片,又点击form2窗体中的图片弹出form3子窗体,请问在f...
你好!我最近做C#MDI多窗体程序类似photoshop,实现点击form1的菜单栏弹出form2窗体浏览图片,又点击form2窗体中的图片弹出form3子窗体,请问在form3中怎么使用父窗体对象
?谢谢! 展开
?谢谢! 展开
4个回答
展开全部
把父窗体当做构造函数的参数传递过去,然后对你父窗体中要使用的控件设置public的接口,就能调用了,例如你的例子
父窗体ParentFrom实例form1的时候
假如你要设置的是一个Name属性为textBox1的Textbox文本框,这样设置接口
public System.Windows.Forms.TextBox gettextBox1()
{
return textBox1;
}
From1 f1=new From1(this);
From1创建的时候
//以下先申明一个父窗体用作传递
ParentFrom parentFrom
public From1(ParentFrom parentsForm)
{
parentFrom=parentsForm;
InitializeComponent();
}
这样就完成了一次传递,然后同理把这个父窗体传到From2,和From3中
然后你就可以在From3通过
parentFrom.gettextBox1()调用了
父窗体ParentFrom实例form1的时候
假如你要设置的是一个Name属性为textBox1的Textbox文本框,这样设置接口
public System.Windows.Forms.TextBox gettextBox1()
{
return textBox1;
}
From1 f1=new From1(this);
From1创建的时候
//以下先申明一个父窗体用作传递
ParentFrom parentFrom
public From1(ParentFrom parentsForm)
{
parentFrom=parentsForm;
InitializeComponent();
}
这样就完成了一次传递,然后同理把这个父窗体传到From2,和From3中
然后你就可以在From3通过
parentFrom.gettextBox1()调用了
展开全部
可以啊,相当于父子窗体间的传值,创建一个静态类,里面就一个父类窗体类的变量用来存放父类的对象,当点击显示子窗体前把该变量赋上父类的值,然后就可以在子类的窗体上调用父类的东西了,希望对你有所帮助
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
直接把父窗体作为参数传过去就可以了
Form2 f2 = new Form2(this);
然后再form窗体的构造器中接过来就可以了。
Form2 f2 = new Form2(this);
然后再form窗体的构造器中接过来就可以了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
跟你做点击form1菜单栏弹出form2窗体一样的做法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询