我想为某些记录输入浮点值。因此,如果我输入。(小数点),则应在小数点之前添加零。例如(如果我在文本框中输入.2,则必须显示为0.2)。怎么做?
任何帮助将不胜感激。
期待的感谢。
答案 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);
}
}