在小数点前加零

时间:2010-08-27 09:47:42

标签: c#

我想为某些记录输入浮点值。因此,如果我输入。(小数点),则应在小数点之前添加零。例如(如果我在文本框中输入.2,则必须显示为0.2)。怎么做?

任何帮助将不胜感激。

期待的感谢。

3 个答案:

答案 0 :(得分:5)

只需将字符串解析为double,然后将其转换回字符串,然后将其格式化为前导零。例如:

string input = ".42";
double value = Double.Parse(input, CultureInfo.InvariantCulture);
string display = value.ToString(CultureInfo.InvariantCulture);

字符串display现在包含"0.42"

您可能希望使用Double.TryParse方法来处理输入无效的时间。

答案 1 :(得分:1)

假设有一个文本框,在它的属性中,转到事件,双击Leave(在焦点下方列出)。生成一个函数,在其中写一个简单的if结构,类似于下面的结构:

private void textBox1_Leave(object sender, EventArgs e)
{
    if ((textBox1.Text.Trim()).StartsWith("."))
       textBox1.Text = "0" + textBox1.Text;
}

答案 2 :(得分:0)

keypressevent

 // add zero before point
    public void addzerobefore(object sender, KeyPressEventArgs e)
    {
        TextBox add0txtbx = sender as TextBox;
        if ((add0txtbx.Text.Trim()).StartsWith("."))
        {

            add0txtbx.Text = "0"+add0txtbx.Text;
            add0txtbx.Select(add0txtbx.Text.Length, 0);
        }
    }