gpt4 book ai didi

c# - 焦点更改时文本框格式丢失

转载 作者:太空狗 更新时间:2023-10-29 23:26:04 24 4
gpt4 key购买 nike

我有一个带有数据绑定(bind)文本框的 Windows 窗体,它显示格式如下的电话号码:(800) 555-5555。数据以十进制形式存储,然后我以正确的格式显示它。但问题是当我单击文本框然后单击其他内容时,它从 (800) 555-5555 变回 8005555555。格式丢失。我尝试在 textBox 离开事件中再次重新格式化数字,但这不起作用。可能是什么原因造成的?

与 2010 c# 相比

首先格式化我这样做

private string FormatCustPhoneBox(string a)
{
string phone = a;

for (int j = 0; j < phone.Length; j++)
{
if (!Char.IsDigit(phone, j))
{
phone = phone.Remove(j, 1); //Remove any non numeric chars.
j--;
}
}
return phone;
}

然后我这样做

    private void FormatPhoneNum()
{
decimal iPhone = decimal.Parse(CustomerPhone1Box.Text);
CustomerPhone1Box.Text = string.Format("{0:(###) ###-####}", iPhone);
}

最佳答案

您是否将数据绑定(bind)到文本框?如果是,将数据转换为格式化字符串并绑定(bind)到字符串数据类型而不是数字。或者使用蒙版文本框。

关于c# - 焦点更改时文本框格式丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6680497/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com