2011-04-06 69 views
0

我想将一个浮点值转换为字符串以显示在文本框中。 但是,当我将值赋给文本框时,我得到了“输入字符串格式不正确”的异常。WinForms从浮动转换为字符串,输入字符串格式不正确

我试图在消息框中显示这个字符串,并显示。但文本框文本分配失败

property float Distance 
     { 
      float get(){return float::Parse(txtDist->Text);} 
      void set(float value) 
       { 
        String^ str = String::Format("{0:0.00}",value); 
MessageBox::Show(str);//success 

       txtDist->Text = str;//Exception 
      } 


    } 
+0

这个例外在解析分配值时应将文本框像你说的,通常会出现。除非您对该文本框进行了一些验证,而该文本框不会识别该值并引发该异常。这是怎么回事? – 2011-04-06 06:08:17

+0

我在文本框上有一个TextChanged事件,因此得到了异常。 – xaria 2011-04-07 02:24:02

+0

那么你解决了这个问题? – 2011-04-07 06:54:28

回答

0

请格式化文本框的文本属性。我用C#格式编写示例代码。您可以将其转换为您想要的格式。

textBox1.Text = string.Format("0:0.00", someNumber); 

我认为应该低于在工作你的情况:

txtDist->Text = String::Format("{0:0.00}",value);