继承进度条时如何替换进度条的 Value 属性

本文关键字:Value 属性 换进 继承 何替 | 更新日期: 2023-09-27 18:36:10

我正在尝试创建一个继承 ProgressBar 类的自定义用户控件。 我想尝试替换进度条类的"值"属性。 当我尝试这样做时,我陷入了无限循环,因为尝试设置 Value 属性最终会调用我的新类属性。

所以问题是,有没有办法解决这个问题,或者我需要创建某种类型的内部变量来跟踪进度条的值? 这将如何运作?

这是我到目前为止所拥有的...

public partial class MyProgressBar : ProgressBar
{
        public new int Value
        {
            get { return Value; }
            set
            {
                if (value < Minimum) value = Minimum;
                if (value > Maximum) value = Maximum;
                Value = value;
            }
        }
}

继承进度条时如何替换进度条的 Value 属性

public partial class MyProgressBar : ProgressBar
{
        public new int Value
        {
            get { return base.Value; }
            set
            {
                if (value < Minimum) value = Minimum;
                if (value > Maximum) value = Maximum;
                base.Value = value;
            }
        }
}