我从string到double的转换
大家好,这种从字符串到double的转换正确吗,或者有没有更好的重写方法?我正在使用WPF应用程序。这个想法是从Textbox1中获取值,并将其乘以2.75,然后在Textbox2中自动设置它。 private void textbox 1 _ text changed(对象发送方,TextChangedEventArgs e)。{。
double d = 0;。
双倍,TryParse(文本框1,正文,out d);。
Textbox2,Text = (d * 2.75),ToString();。
}。
谢谢您。
**** Hidden Message ***** 你也可以使用转换,ToDouble方法,但是双倍。如果正确使用,TryParse方法是更好的方法: private void textbox 1 _ TextChanged(object sender,TextChangedEventArgs e){。
double d = 0.0。
Boolean stringsivaliddouble = double,TryParse(文本框1,正文,out d);。
if(stringIsValidDouble)。
Textbox2,Text = (d * 2.75),ToString();。
}。
谢谢安德烈布什曼的回复,你的修改真的很有帮助。
函数Convert.ToDecimal在WPF应用程序中不可用,因此我提到我正在使用WPF应用程序
,我只是想知道是否有任何更好的方法来编写代码,仅此而已。
非常感谢。 你说得不对
使用系统
使用System.Windows
名称空间控制台应用程序1{
类程序{
静态void Main(字符串[]参数){
应用程序app=新应用程序()
窗口win=新窗口()
获胜。Loaded+=win_ Loaded
应用程序运行(win)
}
<div>静态void win_Loaded(对象发送方,事件参数e){
双温=123.45
字符串str=temp.ToString()
Double doubleValue=Convert。ToDouble(str)*100.0
窗口win=发送者作为窗口
如果(null!=win){
获胜。Title=doubleValue.ToString()
}
}
}
}
我仍然感到困惑
我假设您使用
别名
作为系统名称空间。大概是这样的:
使用yourAliase = System
在这种情况下,请使用:
your aliase。convert . to double(str)
或者这个:
系统。Convert.ToDouble(str)系统。转换是在mscorlib.dll程序集中定义的。
是的,在将系统命名空间添加到程序后有效
非常感谢。
我试图将程序集添加到程序中,但给了我一条消息,它说程序集将自动添加到. dll文件,但我需要之前
我知道。但我不知道你的项目已经做了什么。禁止自动加载公共DLL文件集是可能的。读一读这本书,它会对你有用的。 Hi Coder,
也许你可以从。它使用Autodesk。在WPF控件中进行转换的AutoCAD.Runtime.Converter类。 只需绑定到 Datacontext 中的双精度值即可,默认情况下,WPF 使用 ToString() 方法显示没有数据模板的数据。public class MyViewModel。
{。
public double MyDouble { get; set; }。
}。
。
。
。
。
实现INotifyPropertyChanged,您也可以将TextBoxTwo绑定到MyDouble, 有很多方法可以在没有数据转换的情况下剥这只猫的皮。
页:
[1]
2