我正在尝试创建一个包含文本的组合框,当选择每个文本时,文本将等于小数,然后在数学代码中使用。我在Visual Studio中使用C#。
我是初学者,非常感谢任何帮助。
谢谢, 皇家
答案 0 :(得分:3)
这应该相当简单。您可以使用Decimal.Parse()
将所选字符串值转换为小数:
decimal val = Decimal.Parse(someComboBox.SelectedItem.ToString());
答案 1 :(得分:2)
如果您知道该字符串肯定是十进制的,您可以使用Justin的答案,如果您不确定它是否为十进制,您也可以尝试:
decimal ParseDecimal(string str){
decimal number;
if(Decimal.TryParse(str, out number)
{
return number;
}
return decimal.MinValue (or any other value that you know to check against)
}
传递给方法的字符串是组合框字符串。
答案 2 :(得分:0)
您是否希望将输入字符串转换为十进制?这可能有所帮助。 http://msdn.microsoft.com/en-us/library/59095yyw.aspx以及Decimal.TryParse http://msdn.microsoft.com/en-us/library/9zbda557.aspx
答案 3 :(得分:0)
或者如果您确定可以使用转换方法:
十进制val = Convert.ToDecimal(comboBox1.SelectedItem.ToString());
但是因为你说你不确定字符串值是什么(或者是小数,或者是一个小数,或者是一个简单的搅拌,还是......)最好使用Darren的检查版本,这将是检查字符串是否是实际的十进制值。如果是,它将进入括号(然后你可以做一些事情),如果不是,那么它将覆盖if语句(你可以添加一个else语句来做其他事情。
米蒂亚