我正在尝试使用通用抽象基类构建一个验证文本框控件,如下所示,并注册Min和Max值:
public abstract class ValidatingTextBoxBase<T, C>
: TextBox where T : Icomparable<T>
public static readonly DependencyProperty MinValueProperty =
DependencyProperty.Register("MinValue", typeof(T), typeof(C),
new FrameworkPropertyMetadata(DefaultMinValue));
public T MinValue
{
get { return (T)GetValue(MinValueProperty); }
set { SetValue(MinValueProperty, value); }
}
然后我声明了几个文本框控件:
public class IntegerTextBox : ValidatingTextBoxBase<int, IntegerTextBox>
{
public class DecimalTextBox : ValidatingTextBoxBase<decimal, DecimalTextBox>
{
在运行时,这很有用,但是我为
设置了很多设计时错误'MinValue' property was already registered by 'DecimalTextBox'
或者它将是IntegerTextBox或其他一个,具体取决于哪个视图是打开的。
任何想法/帮助都将不胜感激。