2015-09-30 145 views
-1

我有一個不工作的窗體窗體上的按鈕。該形式被稱爲窗口2按鈕幫助c#Visual Studio

private void button1_Click(object sender, EventArgs e) 
    { 
     Form1.setPlayerNames(p1.Text, p2.Text); 
     this.Close(); 

    } 

代碼似乎檢查兩個文本框,並在接下來的形式爲它們分配一個值,Form1中這是應該被鏈接。由於某些原因鏈接不起作用。

+0

你是什麼意思「這應該是被鏈接Form1上。」? –

+1

你看到一個錯誤? – jrummell

+0

form4鏈接到form2和form3。然後form2應該鏈接到form1 – user3495247

回答

0

首先,你打開的窗口2之前,設置全局變量是

public string textbox1Value = ""; 
public string textbox2Value = ""; 

然後打開的窗口2類似form2.ShowDialog();

調用按鈕功能時,做到這一點...

private void button1_Click(object sender, EventArgs e) 
    { 
     textbox1Value = p1.Text; 
     textbox2Value = p2.Text; 
     this.Close(); 

    } 

後,關閉窗口2,在form2.ShowDialog低於(); 把這個,

Form1.setPlayerNames(form2.textbox1Value, form2.textbox2Value); 

嘗試。

而我意識到一件事是,Form1顯示爲淺藍色,您是否試圖調用form1中的類函數?沒有聲明變量?

+0

我在哪裏把全局變量 – user3495247

+0

全局變量應該投入到窗口2 –

+0

用於例如,對於U, 公共部分Form1類:表格 { 公共字符串textbox1Value =「」; public string textbox2Value =「」; public Form2() { InitializeComponent(); } } –

0

ater工作了一段時間,我似乎弄明白了。這是我對窗口2 :

private void button1_Click(object sender, EventArgs e) 
    { 
     Form1.setPlayerNames(p1.Text, p2.Text); 
     Form1 f1 = new Form1(); 
     this.Close(); 
     f1.ShowDialog(); 
    } 

在Form1上我有這個:

private void Form1_Load(object sender, EventArgs e) 
    { 
     label1.Text = player1; 
     label3.Text = player2; 

    }