【发布时间】:2015-04-23 00:24:25
【问题描述】:
这是 XAML 的代码:
<Page.Resources>
<Style x:Key="cells" TargetType="GridViewColumnHeader">
<Style.Triggers>
<Trigger Property="IsEnabled" Value="True">
<Setter Property="Background" Value="#FF00B9FF"></Setter>
<Setter Property="Foreground" Value="White"></Setter>
<Setter Property="BorderBrush" Value="#FF00B9FF"></Setter>
<Setter Property="Padding" Value="8"></Setter>
<Setter Property="MinWidth" Value="100"></Setter>
</Trigger>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="#FF00B9FF"></Setter>
<Setter Property="Foreground" Value="White"></Setter>
<Setter Property="BorderBrush" Value="#FF00B9FF"></Setter>
<Setter Property="Padding" Value="2"></Setter>
<Setter Property="MinWidth" Value="100"></Setter>
</Trigger>
</Style.Triggers>
</Style>
</Page.Resources>
<Grid>
<Label Content="Notifications" VerticalAlignment="Top" HorizontalAlignment="Left" FontSize="20"></Label>
<ListView Background="{x:Null}" FontSize="17" Margin="0,30,0,0" ItemsSource="{Binding Notifications}" HorizontalAlignment="Center" BorderBrush="{x:Null}">
<ListView.View>
<GridView AllowsColumnReorder="False">
<GridViewColumn Header="Sl No." DisplayMemberBinding="{Binding Slno}" HeaderContainerStyle="{StaticResource cells}"></GridViewColumn>
<GridViewColumn Header="Message" DisplayMemberBinding="{Binding Message}" HeaderContainerStyle="{StaticResource cells}"></GridViewColumn>
<GridViewColumn Header="Date" DisplayMemberBinding="{Binding Date}" HeaderContainerStyle="{StaticResource cells}"></GridViewColumn>
</GridView>
</ListView.View>
</ListView>
</Grid>
IsEnabled 触发器很好,但 IsMouseOver 触发器不起作用。我尝试使用ControlTemplate,但<GridViewColumn/> 没有属性并返回错误Cannot convert ControlTemplate type to DataTemplate or Style。
我正在尝试更改网格标题的样式,当在 MOuseOver 上显示默认模板时。
如何覆盖样式?
【问题讨论】:
-
从stackoverflow.com/questions/1172534/…得到了我的问题的答案