2012-10-18 131 views
1

我的轉換代碼如下:轉換combobox.selectedItem到INT32 C#

para = Int32.Parse(cmbCompany.SelectedItem.ToString()); 

的數據,我的組合框結合的代碼是這樣:

string query = "select CompanyID as ID, CompanyName as Name from tblCompany"; 
comb.ValueMember = "ID"; 
comb.DisplayMember = "Name"; 
comb.DataSource = ds.Tables[0]; 

當我運行上面的代碼,我得到一個轉換錯誤:

我該如何解決這個問題?

+2

好的格式!

+0

你會得到什麼錯誤? –

+0

代替'selecteditem'嘗試'selectedvalue' – Dotnet

回答

0

我的問題已經解決。我做了以下

Int32.Parse(((DataRowView)cmbCompany.SelectedItem).Row["ID"].ToString()); 
2

使用comboBox1.SelectedValue

Int32.Parse(comboBox1.SelectedValue.ToString()); 

您可以使用Int32.TryParse如果你希望對組合空值

int number; 
bool result = Int32.TryParse(comboBox1.SelectedValue.ToString(), out number); 
if (result) 
{ 
    //Your code 
} 
+0

而不是'Int32.Parse''Int32.TryParse'在這裏會更好。數據可以是空字符串。 [鏈接] http://msdn.microsoft.com/en-us/library/f02979c7.aspx – Ozgur

+0

感謝您的建議,通常id不是空的,但可以如此更新答案。 – Adil