在c#winform中用0(零)填充字符串的空字段?

时间:2012-09-25 05:32:01

标签: c# winforms string

我有一个winform,我有一个最多需要14个数字的文本框。现在,如果用户输入少于14,我必须使用0填充其余字段。例如。如果用户10编号,我必须包括4个0以使其成为14。

3 个答案:

答案 0 :(得分:4)

将文本框的MaxLength属性更改为14.获得Text属性后,使用{{3}上的PadLeftPadRight方法}。class。

示例

void textBox_LostFocus(object sender, EventArgs e)
{
    var text = this.textBox.Text;
    text = text.PadLeft(14, '0');

    this.textBox.Text = text;
}

<强>结果

var value = "abcd";
var leftPadded = value.PadLeft(14, '0'); // <- "0000000000abcd"
var rightPadded = value.PadRight(14, '0'); // <- "abcd0000000000"

您可能还想考虑使用String类。

答案 1 :(得分:0)

textbox.TextChanged += new EventHandler( textbox_TextChanged );

private textbox_TextChanged(Object sender, EventArgs e) {
    textbox.Text = textbox.Text.PadLeft(14, '0');
}

答案 2 :(得分:0)

如果您使用数据绑定,并且如果您只想在文本框的显示中添加数字而不是在基础数据源中,则可以在创建自己的文本框衍生时使用标准.net格式,如所述{{ 3}}。可能会派上用场。