我使用DataTemplate
來顯示一些帶有自定義視圖(包括圖像,文本等)的按鈕。下面是一個簡單的例子:DataTemplate中按鈕的MouseOver效果
<DataTemplate DataType="{x:Type viewModel:ActionItem}">
<Button Background="SlateGray" Command="{Binding Command}">
<Button.Style>
<Style TargetType="{x:Type Button}">
<Setter Property="Background" Value="Green"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Button}">
<Border Background="{TemplateBinding Background}">
<ContentPresenter />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="DarkGoldenrod"/>
</Trigger>
</Style.Triggers>
</Style>
</Button.Style>
<TextBlock Text="{Binding Name}" />
</Button>
</DataTemplate>
爲什麼鼠標移到效果不工作?
@ S.Akbari:在相關的答案告訴編譯器使用一個控制模板,我已經這樣做了。 – nabulke