c#如何从另一个窗口中更改主窗口控件的属性

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#如何从另一个窗口中更改主窗口控件的属性相关的知识,希望对你有一定的参考价值。

我在Form2中做了一个comobox控件,选定了我要的属性值后,点“确定”钮,如何使我的Form1中的label.Text属性随之更改?
Form1是我的主窗口,Form2作为弹出窗口对Form1进行设置。

1.static - 给控件设置 static 属性,在所有程序集中都可以访问,但这种访法比较麻烦。。
2.传对象,示例如下:
// 第一个窗体form1,控件名为label,访问修饰符设为非private即可
在这里创建个有参的构造方法
public form1(from2 owner)

// 第二个窗体from2,控件名为btnTest

我们可以这样在第二个窗体中控制第一个窗体中的控件
在form2源码中写:
form2 test = new form2(this);
test.label.Text = "<<comobox选定的值>>";
参考技术A form2中写个函数,让form1调用,把form1自己的this的传过去
然后form1中写个public的函数,当form2调用这个的时候,执行你想要的操作
参考技术B 是WINFORM 吧

如果是WINFORM的话,你用构造函数给窗口传值.

当然也可以用类,
参考技术C 窗体间的值传递,可以在form1中设置几个共有变量,也可以创建一个静态类。

以上是关于c#如何从另一个窗口中更改主窗口控件的属性的主要内容,如果未能解决你的问题,请参考以下文章

利用c# 编写贪吃蛇游戏如何修改label的属性

使用 MVVM 和视图模型通信的 WPF 窗口模式对话框

如何从另一个页面更改页面标签?

WPF中如何实现将一个窗口的对象关联到另一个窗口?

【C#】WinForm中如何让窗口最小化时直接最小化到托盘,后台运行

C#使用winform的控件记录