Winform中怎样在工具类中对窗体中多个控件进行操作(赋值)
程序员文章站
2023-10-16 18:37:51
场景 需求是在窗体加载完成后掉用工具类的方法,工具类中获取窗体的多个控件对象进行赋值。 注: 博客主页: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获取编程相关电子书、教程推送与免费下载。 实现 新建一个窗体程序,在窗体Forn1中 ......
场景
需求是在窗体加载完成后掉用工具类的方法,工具类中获取窗体的多个控件对象进行赋值。
注:
博客主页:
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
新建一个窗体程序,在窗体forn1中拖拽一个label控件和textbox控件。
然后进入到窗体的代码中
在构造方法前声明静态类变量
public static form1 form1 = null;
在构造方法中将当前窗体赋值给上面声明的变量
public form1() { initializecomponent(); form1 = this; }
窗体完整代码:
using system; using system.collections.generic; using system.componentmodel; using system.data; using system.drawing; using system.linq; using system.text; using system.threading.tasks; using system.windows.forms; namespace fromparamtest { public partial class form1 : form { public static form1 form1 = null; public form1() { initializecomponent(); form1 = this; } private void form1_load(object sender, eventargs e) { setparam.setcontroltext(); } } }
新建工具类setparam
using system; using system.collections.generic; using system.linq; using system.text; using system.threading.tasks; namespace fromparamtest { public class setparam { public static void setcontroltext() { form1.form1.label1.text = "霸道"; form1.form1.textbox1.text = "流氓"; } } }
此时通过窗体类调用静态的窗体变量,进而调用控件对象时会提示如下
这是因为控件默认是保护级别的,即所属窗体私有的,要修改控件的modifilers属性改为public。
来到窗体设计页面,右键控件-属性
然后双击窗体进入窗体的load事件中
在窗体加载完的方法中调用工具类的方法
private void form1_load(object sender, eventargs e) { setparam.setcontroltext(); }
运行效果