winform 父窗体如何获取子窗体控件的值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了winform 父窗体如何获取子窗体控件的值相关的知识,希望对你有一定的参考价值。

父窗体f1
打开子窗体f2,然后传"1"给f2的lable1
再次打开新的f2,然后传"2"给f2的lable1
.....
如何遍历f1打开的所有f2,找到lable1值为"2"的f2
然后把"2"改成"a"

参考技术A 你可以在打开之前将 新窗口记录进ArrayList 中.
然后再点一个按钮遍历 这个ArrayList 找到你所需要的.
按照你举的例子,代码如下:
using System.Collections;
public partial class Form1 : Form

int i;
public Form1()

i = 1;
InitializeComponent();

ArrayList list = new ArrayList();
private void button1_Click(object sender, EventArgs e)

Form2 f2 = new Form2();
((TextBox)f2.Controls["txt"]).Text = i.ToString();
i++;
f2.Show();
list.Add(f2);


private void button2_Click(object sender, EventArgs e)

foreach (Form f in list)

if (((TextBox)f.Controls["txt"]).Text == "2")

((TextBox)f.Controls["txt"]).Text = "a";



本回答被提问者采纳

以上是关于winform 父窗体如何获取子窗体控件的值的主要内容,如果未能解决你的问题,请参考以下文章

在C#winform中如何遍历子窗体中所有的控件

winform界面传值问题

winform 子窗体继承了父窗体,父窗体上面有一些控件,现在子窗体继承了父窗体,但是继承的控件属性不能用

c#如何把子窗体的值传给父窗体?

Qt:子窗口中如何获取主窗体ui中的控件

在C#winform中如何遍历子窗体中有容器中的所有的控件