0
我遇到了WPF樣式的問題。WPF樣式僅適用於使用dataTrigger的根元素
在根用戶控件我有這樣定義的資源:
<UserControl.Resources>
<Style TargetType="{x:Type MyControl}">
<Setter Property="MyControl.AAA" Value="Value1" />
</Style>
</UserControl.Resources>
這一切正常,它會影響整個可視化樹層次結構中的所有元素MyControl。
如果我試圖更改使用DataTrigger設置器,像這樣:
<UserControl.Resources>
<Style TargetType="{x:Type MyControl}">
<Style.Triggers>
<DataTrigger Binding="{Binding Path=SelectedAAAValue}" Value="Value1">
<Setter Property="MyControl.AAA" Value="Value1" />
</DataTrigger>
<DataTrigger Binding="{Binding Path=SelectedAAAValue}" Value="Value2">
<Setter Property="MyControl.AAA" Value="Value2"/>
</DataTrigger>
</Style.Triggers>
</Style>
</UserControl.Resources>
樣式僅應用於特定類型MyControl的根元素。
任何人都可以解釋爲什麼會發生這種情況嗎?我如何通過DataTriggers將樣式應用於所有特定元素?
非常感謝您的幫助。 Ondra
嗨克里斯蒂安,非常感謝,你排到我正確的方向上,必須的DependencyProperty被定義爲繼承,這樣AAAProperty = DependencyProperty.Register( 「AAA」, typeof運算(MyControl), typeof運算(ProjectiveControl) , 新的FrameworkPropertyMetadata( some_default_value,FrameworkPropertyMetadataOptions.Inherits)); –