社区
C#
帖子详情
子窗口如何调用父窗口的函数和成员?
upc_linshi
2010-11-12 10:00:48
form1是父窗口,通过
Form2 f2 = new Form2();
f2.ShowDialog();
产生form2,
如何在form2的窗口处理函数中使用form1的资源呢?我用的是vs2005,c#的方案
...全文
928
9
打赏
收藏
子窗口如何调用父窗口的函数和成员?
form1是父窗口,通过 Form2 f2 = new Form2(); f2.ShowDialog(); 产生form2, 如何在form2的窗口处理函数中使用form1的资源呢?我用的是vs2005,c#的方案
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
upc_linshi
2010-11-16
打赏
举报
回复
我总结一下吧
如果要在两个不同的类之间调用,那么首先得在类的成员函数中获得目标类的对象,在自动建立的程序框架里是没有Form1的对象的,它的对象隐匿了(application.run(new Form1()))
因此要在Form2中获得Form1的对象,有两种方法
1,在解决方案的类中,最大的那个类中声明Form1的对象,Form1 form1,在运行时,form1=new Form1()
application.run(form1);
2,在运行其他的窗体的时候,比如运行Form2,给From2添加一个变量Form1 f1;把Form2的构造函数改为
Form2(Form1 f1)
{this.f1=f1};
在Form1中生成Form2的时候,Form2=new Form2(this);这样就把Form1的对象this传给了Form2,Form2就可以获得Form1的对象了
upc_linshi
2010-11-13
打赏
举报
回复
能不能给出parent的一些方法啊?我就是函数名称不知道怎么查?给个链接参考一下,谢谢
upc_linshi
2010-11-13
打赏
举报
回复
3楼说的对吗?
f2.Form_1 = this;
这里的this不是form2吗
Ann725
2010-11-13
打赏
举报
回复
这两个窗体是两个不同的类,这就涉及数据传递的问题,可以用委托
quifar123
2010-11-12
打赏
举报
回复
在form1 定义要用的字段如:string a;在form2定义public b的字段接受,
在form1的事件中:form2 f=new form2();
f.b=a;
f.show();//or f.ShowDialog();
兔子-顾问
2010-11-12
打赏
举报
回复
看你如何设置的子窗体和父窗体了。如果是this.Controls.Add添加的,你可以通过Parent转换为父窗体类型:
(Parent as Form1).访问父窗体对象
如果是彼此不想干的,设置了Owner,则可以靠这个变量转换类型访问。
如果是Mdi。可以用MdiParent访问。
hch126163
2010-11-12
打赏
举报
回复
form2 中
public form1 Form_1;
Form2 f2 = new Form2();
f2.Form_1 = this;
f2.ShowDialog();
这样就可以在form2 中访问 form1 的公共属性和方法
int64
2010-11-12
打赏
举报
回复
简单的可以用全局变量实现
laj0600310219
2010-11-12
打赏
举报
回复
蛮多方法的啊,你可以使用传参的形式,也可以使用public变量的形式,还可以使用委托的形式。。。等等。。
qt
子
窗口
访问
父
窗口
中的
成员
函数
、
成员
变量
本文介绍了在Qt编程中,如何从
子
窗口
访问并
调用
父
窗口
的
成员
函数
和
成员
变量,详细阐述了相关的方法和步骤。
MFC中获取
父
窗口
指针 从而
调用
其
函数
及变量
本文介绍如何从
子
窗口
中
调用
父
窗口
的
成员
函数
和变量。通过使用GetParent()
函数
两次,可以获取到主对话框的指针,进而访问
父
窗口
的
成员
。
(MFC中
子
窗口
调用
父
窗口
指针(
子
类
调用
父
类))VS2015-MFC 引发了异常 读取访问权限冲突
本文介绍在MFC框架下,如何从
子
窗口
安全地
调用
父
窗口
的
成员
变量和
函数
,解决访问权限冲突的问题。通过实例演示了在
子
窗口
中定义虚
函数
OnInitDialog(),并
调用
父
窗口
的相机编号参数。
C++回调
函数
和this指针的实例
本文介绍了一种在Qt应用程序中实现
子
窗口
操作
父
窗口
的方法。通过传递this指针和使用静态
成员
函数
,
子
窗口
可以
调用
父
窗口
的
成员
函数
来修改
父
窗口
的内容。
C#使用委托实现
子
窗口
调用
父
窗口
的TextBox
这篇博客详细介绍了如何在C#中通过委托来实现在
子
窗体中
调用
父
窗体的方法。首先在
子
窗口
中定义了一个DisplayTextDelegate类型的委托和对应的
成员
变量,然后在按钮点击事件中使用该委托传递信息。在
父
窗口
的构造
函数
中,给
子
窗口
的委托赋值,并设置当委托被
调用
时执行的处理方法。通过这种方式,成功实现了
子
窗口
向
父
窗口
的数据传递,展示了委托在跨
窗口
通信中的应用。
C#
111,129
社区成员
642,540
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章