我可以隐藏 NumericUpDown 控件中的值吗?
假设我们在控件的值字段中显示了 0
,我希望如果该值为 0
- 显示 string.Empty
(我知道值的类型是小数,并且不能插入字符串来代替小数,但仍然......也许那里可能有一些格式?)。
Lets say we have 0
displayed in value field of the control and I want that if the value is 0
- display string.Empty
(I know that the type of value is decimal and there can be no string inserted instead of decimals in it, but still... Maybe there is some formatting possible there?).
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
注意:这取决于
NumericUpDown
的当前实现。您需要做的是创建一个继承自
NumericUpDown
的新控件,以便:Note: This is dependent on the current implementation of
NumericUpDown
.What you need to do is create a new control that inherits from
NumericUpDown
such that:似乎对更改格式的支持非常有限。
我自己还没有尝试过。但是您可以创建一个子类并重写
UpdateEditText
方法以支持您的自定义格式。像这样的事情:It seems that there is only very limited support for changing the formatting.
I have not tried this myself. But you could create a subclass and override the
UpdateEditText
method to support your custom format. Something like this:一个更简单的解决方案是调用 ResetText() 方法。您可以通过更改 Value 属性来恢复文本。
禁用 NumericUpDown 控件时隐藏文本并在启用时恢复它的示例代码
An easier solution is calling the ResetText() method. You can restore the text changing the Value property.
Example code to hide text when NumericUpDown control is disabled, and restore it on enabled
如果您只想对用户隐藏该值,可以将
ForeColor
设置为与BackColor
相同,这样NumericUpDown
中的值将不可见用户。If you only want to hide the value from the user, you can make
ForeColor
the same asBackColor
so the value insideNumericUpDown
will be invisible to the user.