一部の機能の基本クラスとして扱うクラスを作成しました。今、私はそのクラスの働きを拡張したかったのです。しかし、ユーザーに見せたくないプロパティがいくつかあります。問題は、一部の Dependency プロパティをどのように非表示にできるかです。
については知ってBrowsableAttribute
いますが、これは他のクラスで使用されているため、基本クラスでは使用できません。そのため、新しい拡張クラスの一部のプロパティのみを非表示にしたいと考えています。
public class BaseControl : Control
{
static BaseControl()
{
DefaultStyleKeyProperty.OverrideMetadata(typeof(BaseControl), new FrameworkPropertyMetadata(typeof(BaseControl)));
}
public int BaseProperty
{
get { return (int)GetValue(BasePropertyProperty); }
set { SetValue(BasePropertyProperty, value); }
}
// Using a DependencyProperty as the backing store for BaseProperty. This enables animation, styling, binding, etc...
public static readonly DependencyProperty BasePropertyProperty =
DependencyProperty.Register("BaseProperty", typeof(int), typeof(BaseControl), new UIPropertyMetadata(100));
}
public class Child1Control : BaseControl
{
// Using BaseProperty for internal Uses.
}
public class Child2Control : BaseControl
{
//TODO: How To HIDE the BasePropery here so that
}