2012-10-27 72 views
0

我有一個標籤,我希望它根據變量答案顯示播放器或控制檯。如何製作標籤以便根據變量更改文字

private void playerLabel_Click(object sender, EventArgs e) 
    { 
     string playerDetail = "Player", 
      consoleDetail = "Console"; 
     if (Class.Method.Variable == 1) 
     { 
      Show.playerDetail(); 
     } 
     if else (Class.Method.Variable == 0) 
     { 
      Show.consoleDetail(); 
     } 
    }` 

然後我想讓它使標籤顯示字符串,而不是如果你讓我。我知道我沒有正確地做到這一點,但我無法弄清楚究竟該如何做到這一點。

+1

'myLabel.Text = playerDetail;'或'myLabel.Text = consoleDetail'? – 3aw5TZetdf

+1

這些方法都在做什麼?你的'if..else'也不對 – codingbiz

回答

0
private void playerLabel_Click(object sender, EventArgs e) 
{ 
    string labelText = playerLabel.Text; 

    if (Class.Method.Variable == 1) 
    { 
     labelText = "Player"; 
     Show.playerDetail(); 
    } 
    else if(Class.Method.Variable == 0) 
    { 
     labelText = "Console"; 
     Show.consoleDetail(); 
    } 

    playerLabel.Text = labelText; 
} 

這將是更好,如果你在Show類方法返回相應的字符串,這樣就可以做到:playerLabel.Text = Show.WhateverDetail();。此外,如果可以將Show方法與Variable值聯繫起來,那麼它甚至更好,因此您不必使用if-else邏輯。

0

a。標籤的Text屬性是你想要設置你的string的。

playerLabel.Text = playerDetail; 

playerLabel.Text = consoleDetail; 

b。你的if/else方法應該是在形式:

if (test) 
{ 
} 
else if 
{ 
} 
else 
{ 
} 

你不需要在中間的else if位,如果只有兩個分支。

c。我不確定Show.consoleDetail()Show.playerDetail()。 'consoleDetail()'和'playerDetail()'方法調用?

相關問題