2009-07-29 70 views
0

假設我有一個繼承自UserControl的控件(因此它的一個超類是DependencyObject)。使用DependencyProperty解決通知問題非常容易,因爲INotifyPropertyChanged需要一點實現,另一個選項是創建修改控件狀態的方法(如myControl.HideTextBox())。我想有更多的選擇來解決這個問題,但由於控制已經從DependencyObject繼承,DependencyProperty似乎是更明顯的方式,但它可能不是最優的。使用依賴屬性的成本

有沒有想法?

謝謝!

回答

4

依賴項屬性的真正特徵並不是你可以免費獲得更改通知(雖然那是存在的)。真正的特徵是隻有依賴屬性可以成爲數據綁定的目標。這是您在決定屬性是否應該依賴時首先應考慮的問題。

對於一個控件,幾乎所有的屬性都應該是可綁定的,因此也就是依賴關係。

+0

所以我有點困惑。你說這不是DependencyProperties的真正特徵,但是你說幾乎所有的屬性都應該是可綁定的,因此也就是依賴性。對我的例子使用它們是否好? – Carlo 2009-07-29 22:57:20