您的位置:首页 > 编程语言 > C#

WinForm窗体传值

2015-09-18 11:29 288 查看
从Form1中向Form2中传值:

1.    通过全局(静态)变量

Form1中:

//在Form1类中定义一个全局静态变量(也可为全局变量),可初始化。
public static string s = "Hello!";
//在btnSend_Click事件处理方法中:
//若s未初始化,是需要输入的,则在btnSend_Click事件中:
//添加s = txtSendVal.Text;
Form2 frm2 = new Form2();
frm2.Show();
Form2中:
//在Form2_load事件或btnReceive_Click事件中:
txtReceiveVal.Text = Form1.s;

2.    通过属性

Form1中:

//在Form1类中定义一个字段和属性
private string inputValue = "";
public string InputValue
{
get { return inputValue; }
set { inputValue =value; }
}
//在btnSend_Click事件处理方法中:
InputValue =txtSendVal.Text.Trim();
Form2 frm2 = new Form2();
frm2.Show();
frm2.txtReceiveVal.Text= frm1.InputValue;

Form2中:



3.    通过构造函数

Form1中:

//在btnSend_Click事件处理方法中:
Form2 frm2 = new Form2(txtSendVal.Text);
frm2.Show();
Form2中:
//定义一个构造函数
public Form2(string str)
{
InitializeComponent();
this.txtReceiveVal.Text= str;
}

4.    在系统中的窗体传值方法

frmLogIn中:

frmMain frmMain = new frmMain();
frmMain.FrmLogin = this; //将对象引用设置到对象的实例
frmMain.Show();

frmMain中:

private frmLogIn frmLogin;
public frmLogIn FrmLogin
{
get { return frmLogin; }
set { frmLogin = value; }
}
//在frmMain_load事件中
txtAccount.Text = FrmLogin.txtAccount.Text;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C# WinForm 窗体传值