1. 程式人生 > >C#跨窗體傳值方法

C#跨窗體傳值方法

方法1.通過建構函式傳值

Form1:

  Form2 data = new Form2();//例項化物件

  data.Name1 = textBox1.Text;//給物件賦值
  data.Show();

Form2:

  public partial class Form2 : Form
  {
    TextBox text;//定義一個實參,儲存Form1的值
  public Form2(TextBox txt)//定義一個形參
  {
    InitializeComponent();
    text = txt;//將形參和實參對接,這句必須放在InitializeComponent();的後面,否則會引起“空引用異常”


  }

  private void button1_Click(object sender, EventArgs e)
  {
    text.Text = textBox1.Text;//將text裡的內容賦值給實參
  }
  }

 

方法2.通過全域性函式傳值

Form1:

  private void button1_Click(object sender, EventArgs e)
  {
    Form2 data = new Form2();//例項化物件
    data.Name1 = textBox1.Text;//給物件賦值
    data.Show();
  }

 

Form2:

  string name;//定義一個變數

  public string Name1//封裝
  {
    get { return name; }
    set { name = value; }
  }


  private void Form2_Load(object sender, EventArgs e)
  {
    textBox1.Text = name;//賦值

  }

 

Tip:

1.不加static的變數只能在當前名稱空間使用。

2.向其他類裡傳值,需要先例項化,名稱要和類名一致。