欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Winform中怎样在工具类中对窗体中多个控件进行操作(赋值)

程序员文章站 2022-06-05 19:22:54
场景 需求是在窗体加载完成后掉用工具类的方法,工具类中获取窗体的多个控件对象进行赋值。 注: 博客主页: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获取编程相关电子书、教程推送与免费下载。 实现 新建一个窗体程序,在窗体Forn1中 ......

场景

需求是在窗体加载完成后掉用工具类的方法,工具类中获取窗体的多个控件对象进行赋值。

注:

博客主页:

关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

新建一个窗体程序,在窗体forn1中拖拽一个label控件和textbox控件。

Winform中怎样在工具类中对窗体中多个控件进行操作(赋值)

 

 

然后进入到窗体的代码中

在构造方法前声明静态类变量

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 = "流氓";
        }
    }
}

此时通过窗体类调用静态的窗体变量,进而调用控件对象时会提示如下

 

 Winform中怎样在工具类中对窗体中多个控件进行操作(赋值)

 

 

这是因为控件默认是保护级别的,即所属窗体私有的,要修改控件的modifilers属性改为public。

来到窗体设计页面,右键控件-属性

Winform中怎样在工具类中对窗体中多个控件进行操作(赋值)

然后双击窗体进入窗体的load事件中

在窗体加载完的方法中调用工具类的方法

private void form1_load(object sender, eventargs e)
        {
            setparam.setcontroltext();
        }

运行效果

Winform中怎样在工具类中对窗体中多个控件进行操作(赋值)

 

 

Winform中怎样在工具类中对窗体中多个控件进行操作(赋值)