0
我在許多地方閱讀,DataTrigger
不僅限於依賴屬性(如Trigger
),但它也可以響應任何.NET屬性。有沒有什麼WPF觸發器可以做DataTrigger不能?
那麼DataTrigger
是否是Trigger
的超集呢?
爲什麼Trigger
存在當我們有DataTrigger
?
我在許多地方閱讀,DataTrigger
不僅限於依賴屬性(如Trigger
),但它也可以響應任何.NET屬性。有沒有什麼WPF觸發器可以做DataTrigger不能?
那麼DataTrigger
是否是Trigger
的超集呢?
爲什麼Trigger
存在當我們有DataTrigger
?
WPF
有三種類型的觸發器。
在WPF
Trigger
實際上是屬性觸發器。所以他們只能使用Dependency property
。它們主要用於依賴性屬性值以有條件地執行操作。 (當依賴屬性符合指定條件時)
而DataTriggers
更強大。它們可以綁定到正常的.net屬性以監視更改或任何依賴屬性或其他控件或StaticResources
等。他們通過bindings
執行操作。 (當綁定數據滿足指定條件)
所以,你可以說,而是採用更通用數據觸發器這是任何Triggers
的存在是爲了提供更具體行動Dependency Properties
。淨數據(當然主要是通過變更通知)
因此,要回答你的問題,據我所知,沒有,沒有什麼是屬性觸發器可以做到這一點data-trigger
不能。
一般的經驗法則是,如果您需要將觸發器從** **不同的**元素或** ViewModel **的屬性中取出,則使用'DataTrigger'。否則,只需使用'Trigger'即可離開。 –