0
我有一個自定義控件,派生自ToggleButton
,我想在基類上包裝一個DP。
我需要做到這一點...正確的方式來包裝一個繼承的依賴屬性
public new bool IsEnabled
{
get { return (bool)GetValue(IsEnabledProperty); }
set
{
SetValue(IsEnabledProperty, value);
if (value && IsChecked == null)
IsChecked = false;
}
}
,或者這是確定...
public new bool IsEnabled
{
get { return base.IsEnabled; }
set
{
base.IsEnabled = value;
if (value && IsChecked == null)
IsChecked = false;
}
}
看來工作相同的兩種方式,但我不知道是否有任何隱藏的問題。
OK,是有道理的,我額外的邏輯是一樣的元素中,只有當基本DP改變,所以這是完美的。 –
澄清一點:AddOwner的第二個參數的類型是PropertyMetadata,當沒有特定的重載要告訴它時,AddOwner如何知道提供了哪些元數據(從我能在文檔中找到的內容) ...)? –
這些都在[備註部分](https://msdn.microsoft.com/en-us/library/ms597484(v=vs.110).aspx)(最後一段)中解釋。 – Clemens