2013-08-18 205 views
-1

我是C#的新手,我只是爲了練習(這不是作業) 好吧,我需要將文本框文本(稱爲Numbers)轉換爲整數 我想是這樣的:將TextBox數字轉換爲整數

int number1; 
number1 = int.Parse(Numbers.Text); 

然後檢查它是否是正確的:

label1.Text = number1.ToString(); 
MessageBox.Show(number1.ToString()); 

但整數並不嫌棄。我沒有收到消息,標籤也沒有改變。

附加問題: 爲什麼消息框不顯示? 沒有if語句或者開關。

+0

當您嘗試解析字符串是什麼Numbers.Text的內容? – Steve

+0

您需要顯示比此刻包含的更多的代碼。 –

+0

嘗試MessageBox.Show(Convert.ToString(number1)); –

回答

0

我已驗證您的代碼,以及您發佈的內容是否正常。

我假設你的問題是代碼沒有被運行。確保該方法正在被調用。 如果您仍然無法修復它,請在窗體上添加一個新按鈕。雙擊該按鈕,並將該代碼添加到自動創建的方法中。 然後在運行時點擊按鈕進行測試。

+0

我已經做到了,它有幫助。謝謝。 – Aras

0

這是非常基本的東西,應該工作。考慮到MessageBox完全沒有出現,我想你需要清理你的構建。從解決方案的上下文菜單中選擇Clean,或關閉解決方案和VS,轉到項目目錄,刪除bin和obj,然後返回並重建項目。

+0

我做到了,但是仍然沒有任何反應。 – Aras

2

當涉及到用戶輸入和解析時,您可能需要嘗試Int32.TryParse。如果能給你解析的能力,還可以獲得次要反饋,讓你知道它是否成功。例如:

Int32 parsed; 
String input = "3"; 
if (Int32.TryParse(input, out parsed)){ 
    // it was successful and `parsed` = 3 
} else { 
    // `input` most likely had something invalid 
} 
0

這裏有一個簡單的方法

int i; 
try 
{ 
    i=Convert.ToInt32(textBox1.Text); 
} 
catch 
{ 
    //do whatever you want 
    }