首页主机资讯winform两个窗体传值的方法是什么

winform两个窗体传值的方法是什么

时间2023-12-10 15:28:02发布访客分类主机资讯浏览964
导读:可以通过以下几种方法实现Winform两个窗体之间传值: 构造函数传值:在目标窗体的构造函数中添加参数,通过创建目标窗体时传递参数的方式进行值的传递。 public partial class Form2 : Form { pr...

可以通过以下几种方法实现Winform两个窗体之间传值:

  1. 构造函数传值:在目标窗体的构造函数中添加参数,通过创建目标窗体时传递参数的方式进行值的传递。
public partial class Form2 : Form
{
    
    private string data;

    public Form2(string data)
    {
    
        InitializeComponent();
    
        this.data = data;

    }

}
    

在调用目标窗体的地方,传递值给目标窗体的构造函数。

Form2 form2 = new Form2("传递的值");
    
form2.Show();

  1. 公共属性传值:在目标窗体中定义公共属性,通过设置属性值的方式进行值的传递。
public partial class Form2 : Form
{

    public string Data {
     get;
     set;
 }

}
    

在调用目标窗体的地方,设置目标窗体的属性值。

Form2 form2 = new Form2();
    
form2.Data = "传递的值";
    
form2.Show();

  1. 静态变量传值:在目标窗体中定义一个静态变量,通过直接赋值的方式进行值的传递。
public partial class Form2 : Form
{
    
    public static string data;

}
    

在调用目标窗体的地方,给目标窗体的静态变量赋值。

Form2.data = "传递的值";
    
Form2 form2 = new Form2();
    
form2.Show();

  1. 事件传值:在源窗体中定义一个事件,当目标窗体需要获取值时,触发该事件进行传值。
public partial class Form1 : Form
{
    
    public event EventHandlerstring>
     ValueChanged;

}

在目标窗体中订阅该事件,并在事件处理方法中获取传递的值。

public partial class Form2 : Form
{

    public Form2()
    {
    
        InitializeComponent();
    
        Form1 form1 = new Form1();
    
        form1.ValueChanged += Form1_ValueChanged;

    }


    private void Form1_ValueChanged(object sender, string e)
    {

        // 获取传递的值
    }

}

在源窗体中触发该事件并传递值。

if (ValueChanged != null)
{
    
    ValueChanged(this, "传递的值");

}
    

以上是常用的几种方法,可以根据具体场景选择适合的方式进行Winform窗体之间的值传递。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: winform两个窗体传值的方法是什么
本文地址: https://pptw.com/jishu/576311.html
java怎么输入多行字符串 unity和winform通讯是什么

游客 回复需填写必要信息