1

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

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

4

1 回答 1

1

您需要将Text底层证券的属性设置TextBox为您想要的值。

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

public decimal Value
{
    get{ return _value; }
    set
    {
        _value = value;
        textBox1.Text = _value.ToString();
    }
}

如果您直接从 派生TextBox,只需设置它自己的Text属性。

public decimal Value
{
    get{ return _value; }
    set
    {
        _value = value;
        this.Text = _value.ToString();
    }
}
于 2012-11-20T12:27:14.937 回答