C#父窗体如何调用子窗体中的控件

实现可以在父窗体的代码中对子窗体中控件的Visible之类的属性进行设置

第1个回答  2012-07-10
若是winform的话, 直接在父窗体中,Form[] f = this.MdiChildren;
f数组为你在父窗体中打开的子窗体数组,
你可以如下操作它:f[0].Visible=false;
其他以此类推。
当然,也可以事件发布订阅等方法。不再详述。本回答被提问者和网友采纳
第2个回答  2012-07-10
1、可以通过消息实现,父类发消息、子类接收消息。
2、可以在父类定义抽象方法,由子类实现。追问

能否具体些?

第3个回答  2012-07-10
如果是winform的话则可以考虑两种方法,一个是父窗体保存子窗体变量,二个是子窗体订阅父窗体暴露的事件追问

能否具体些?

C#中如何在一个窗体中调用另一个窗体控件中的数据?
1、首先在窗体上增加如下的三个控件,两个label,一个button,我们要实现的效果是label1每一秒增加一个数字,label2每点击一下button增加一下数字。2、用到了定时任务,如下是两个定时任务的代码,一个是手动定时任务,就是我们点击按钮以后执行的,另一个是自动的订单是任务,程序运行以后执行的。3、...

C#中,父窗体怎样控制子窗体的控件和属性
是的,在父窗体中建立子窗体的实例,也就是New一下。然后用属性控制。

C#中父窗体如何调用子窗体中的函数?
在父窗体中children ch=new children;ch.子窗体中的方法 (被调用的方法不能是私有地)

C#中怎么调用另外一个窗体上的控件
下面中的 index 为索引值 在主窗体primaryfrom中调用窗体from1中控件的属性 from1 f1 = new from1();\/\/假如索引到的是label控件 f1.controls[index].text="我的名字是primaryfrom窗体设置的"f1.show();\/\/模式窗口为:f1.showdialog();这样from1窗体中label控件的text就变成上面设置的文本了 。...

C#中如何在一个窗体中调用另一个窗体控件中的数据?
在C#中,您可以通过以下几种方式在一个窗体中调用另一个窗体的控件中的数据:使用对话框形式调用另一个窗体,在打开的窗体中通过控件名称读取数据。通过实例化另一个窗体,将其显示为模态对话框,读取控件中的数据。通过使用公共属性或公共方法从另一个窗体读取数据。以下是一个例子,该例子使用对话框形式...

c#不能直接在一个窗体中引用另一个窗体中的控件么
可以的,把控件的Modifiers属性设成public 然后就可以引用 了 引用方法:窗口实例.控件名称

C#一个窗体读取另一个窗体上控件的内容?
1、你只要将textBox的内容在实例化Form1的时候传入就好 2、如果Form2为后打开的窗体,则在Form2中定义一个public变量并用Text赋值,然后在Form1中调用这个变量就好。。。3、如果Form2为弹出窗体,则将Form1实例化Form1的时候,重载关闭窗体的参数,获得Text值 ...

...触发子窗体按钮(【计算】)如何实现?触发时不允许丢子窗体控件...
自己做了个简单测试,相互学习下,如下 父窗体代码:public event EventHandler MyClick;public Form3(){ InitializeComponent();Form f = new Form4(this);f.Show();f.BringToFront();f.TopLevel = false;this.panel1.Controls.Add(f);} private void button1_Click(object sender, EventArgs e)...

C#.net中如何在一个Form中访问另一个Form的变量以及控件
父窗体f1,子窗体f2,父窗体里定义一个label1可见性为Public f1中 Form2 f2 = new Form2();f2.Owner = this;f2.Show();f2中 Form1 f1;f1 = (Form1)this.Owner;\/\/这句不要写在构造方法里(会出错)最好写在Form2的Load方法里 f2的button1_Click事件中 f1.label1.Text = "xxx";...

C#中一个窗体调用其他窗体中控件及变量的问题
首先,最重要的是将你想要改动的窗体二中的属性或函数由默认的private改为public 而后,在窗体一中直接调用窗体二中的相关对象即可。 如,用窗体一中的两个button来控制窗体二中textbox中的文本显示,方法如下: private System.Windows.Forms.TextBox textBox2;改为 public System.Windows.Forms.TextBox ...

相似回答