我有自己的文本框,它继承了System.Windows.Forms.TextBox
我正在尝试显示5000000格式的文本==> 5000000
但问题是Control.Text应该返回5000000但它应该显示5,000,000。
我知道这是WTF,但我真的需要它而且我不能谷歌很多,因为我的母语不是英语(任何人都可以从我的语法中得到它,我很抱歉)。
答案 0 :(得分:1)
您可以将标记属性用作Andrey suggested,并更新TextChange
事件中标记属性的值。
答案 1 :(得分:1)
如果要检索它,请使用int.Parse
和CultureInfo.CurrentCulture
将显示的字符串转换为整数,然后使用ToString
和CultureInfo.InvariantCulture
将其转换回字符串。< / p>
答案 2 :(得分:1)
(注意:没有时间查找正确的方法名称,但希望我足够接近有意义......)
创建一个源自TextBox
。
为焦点事件的控件添加处理程序(或者更好,覆盖OnFocus
/ OnBlur
的方法)。当控件失去焦点时,将当前文本存储在私有变量(例如,OriginalText
)中,并将实际文本更新为格式化版本。当控件获得焦点时,请恢复原始文本。
答案 3 :(得分:0)
使用每个控件都有的Tag属性
答案 4 :(得分:0)
您可以将原始值保留在Tag
属性(对象)中。