2013-04-05 67 views
0

我正試圖解決如何將存儲在標籤中的字符串值乘以ComboBox中的選定值。我試圖將兩個值都轉換爲int s,但此錯誤不斷出現:將組合框中選中的值乘以標籤中的數字

無法將類型爲「System.Windows.Controls.ComboBoxItem」的對象轉換爲鍵入「System.IConvertible」。

int quantity = Convert.ToInt32(comboBox3.SelectedItem); 
int price = Convert.ToInt32(label1.Content); 
label2.Content = quantity*price; 

非常感謝

+0

顯示您的代碼,請 – 2013-04-05 21:06:42

+0

如果錯誤表示您正試圖將其轉換爲System.IConvertible,那麼您不會將其轉換爲int。請顯示你的代碼。 – tnw 2013-04-05 21:06:47

+0

問題更新! – user2187795 2013-04-05 21:10:33

回答

0

你想要的SelectedItem的內容,而不是selectedItem本身會(假設WPF):

Convert.ToInt32(comboBox3.SelectedItem.Content); 

但是,如果你已經設置SelectedValuePath,並使用一些數據綁定到一個模型,你可以在一個更簡單的方法選擇的價值(甚至不需要使用轉換,如果模型是一個整數):

comboBox3.SelectedValue 
+0

標記不被識別! ERROR:object'不包含'Tag'的定義,並且沒有可以找到接受類型'object'的第一個參數的擴展方法'Tag'(您是否缺少使用指令或程序集引用?) – user2187795 2013-04-05 21:22:03

+0

Err,could have發誓它是標籤...我會用更正確的方式更新答案。 – 2013-04-05 21:32:25

0

我不太清楚ComboBoxItem這個確切的屬性(我認爲Text),但是您需要獲取其字符串的值而不是整個對象的值來執行轉換。之後,只需使用intParseString類方法。

相關問題