C# Winform下父窗体嵌套子窗体调用问题

meishikegan 2016-03-13 10:41:07
现在有个需求,我有个父窗体其中嵌套了一个tabcontrol,tabcontrol里面有很多个子窗体,然后想做的就是点击父窗体的一个执行按钮可以对当前tabcontrol显示的那个子窗体进行操作,如对子窗体里的某个数据控件进行数据加载等,不知道要怎么才能这样实现父窗体这个相对globle功能的按钮呢,求大侠帮忙,详细一些,
...全文
427 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
threenewbee 2016-03-14
  • 打赏
  • 举报
回复
在ask板块回答过你了。
nry19871012 2016-03-14
  • 打赏
  • 举报
回复
1.动态加载的子窗口,你在加载的时候就应该知道那些窗口被加载了。子窗口的对象应该就知道了。 2.可以通过遍历tabcontrol的page页,每页中增加的子窗口对象就知道了。
meishikegan 2016-03-14
  • 打赏
  • 举报
回复
引用 2 楼 caozhy 的回复:
在ask板块回答过你了。
子窗体是被动态加载的,我想做的其实就是当点击父窗体的执行按钮时就像是当前被加载的那个子窗体被点了相应执行按钮一样..
meishikegan 2016-03-14
  • 打赏
  • 举报
回复
引用 1 楼 sp1234 的回复:
子窗体接口应该对外暴露、具有一个类似
public void SetData(.....)
这样的方法啊。 既然你的父窗体加载了子窗体,自然就是知道、依赖于它或者它的接口而编程的。完全不用考虑间接、依赖倒置技术,直接访问即可。
好像不行..tabcontrol里的那些子窗体都是根据菜单动态加载的,就是说事先并不知道有哪些子窗体被加载到里面..
meishikegan 2016-03-14
  • 打赏
  • 举报
回复
引用 楼主 meishikegan 的回复:
现在有个需求,我有个父窗体其中嵌套了一个tabcontrol,tabcontrol里面有很多个子窗体,然后想做的就是点击父窗体的一个执行按钮可以对当前tabcontrol显示的那个子窗体进行操作,如对子窗体里的某个数据控件进行数据加载等,不知道要怎么才能这样实现父窗体这个相对globle功能的按钮呢,求大侠帮忙,详细一些,
是不是我表达的不清楚,举个例下面这个是父窗体Form1执行按钮调用的方法,目的是使子窗体(以Form2为例)中的方法EventExecute在子窗体Form2中被执行

private void pictureboxExcute_Click(object sender, EventArgs e)
        {
          
   
        }
  • 打赏
  • 举报
回复
子窗体接口应该对外暴露、具有一个类似
public void SetData(.....)
这样的方法啊。 既然你的父窗体加载了子窗体,自然就是知道、依赖于它或者它的接口而编程的。完全不用考虑间接、依赖倒置技术,直接访问即可。

110,567

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧