在WinForms自定义控件中,新属性如何在设计时更改另一个属性?

时间:2012-11-20 11:49:32

标签: c# winforms textbox custom-controls

我正在编写一个基于TextBox的新自定义控件,用于仅使用标准符号显示数值,例如12.34e5。我添加了一个新的十进制类型的Value属性,并将其设置为在Visual Studio的“属性”窗口中显示。当用户在设计时更新Value属性时,如何同时更新Text属性?我见过有关DesignMode属性的帖子 - 这是正确的路径,如果是这样的话?

我意识到NumericUpDown提供数字显示,但它不适合项目要求。

1 个答案:

答案 0 :(得分:1)

您需要将基础Text的{​​{1}}属性设置为您想要的值。

如果你是从TextBox类派生的,你可以通过设置你在Value setter方法中使用的TextBox的UserControl属性来做到这一点:

Text

如果您直接从public decimal Value { get{ return _value; } set { _value = value; textBox1.Text = _value.ToString(); } } 派生,只需设置自己的TextBox属性。

Text