我刚刚为WPF发现了一个非常棒的UI工具包:MahApps.Metro。 我创建了一个窗口,其中包含MahApps.Metro.Controls.Tile。
类型的切片当鼠标经过时,我无法找到突出显示图块的正确方法。
你知道我该怎么办? 我是否需要使用模板和故事板(设置似乎有点复杂......)?
谢谢
[编辑] 这是瓷砖的控件:
<mah:TransitioningContentControl x:Name="LeftControl" Grid.Row="1" Grid.Column="1" Transition="Default" HorizontalAlignment="Left">
<WrapPanel x:Name="SearchPanel" Width="400" Height="500" HorizontalAlignment="Left" VerticalAlignment="Top">
<mah:Tile x:Name="CategoriesTile" Title="Catégories" Style="{StaticResource SearchTileStyle}" Click="ButtonBase_OnClick" />
<mah:Tile x:Name="TagsTile" Title="Tags" Style="{StaticResource SearchTileStyle}" Click="ButtonBase_OnClick"/>
<mah:Tile x:Name="SearchTile" Title="Recherche" Style="{StaticResource SearchTileStyle}" />
<mah:Tile x:Name="FavoritesTile" Title="Favoris" Style="{StaticResource SearchTileStyle}" />
<mah:Tile x:Name="AssistantTile" Title="Assistant" Style="{StaticResource SearchTileStyle}" />
</WrapPanel>
</mah:TransitioningContentControl>
这是我用于图块的样式(在字典中):
<Style x:Key="SearchTile" TargetType="mah:Tile">
<Setter Property="Width" Value="150" />
<Setter Property="Height" Value="150" />
<Setter Property="TitleFontSize" Value="16" />
<Setter Property="Background" Value="{StaticResource SearchTileBrush}" />
<Setter Property="Margin" Value="3" />
</Style>
我希望能够更改背景颜色或在鼠标悬停上添加边框。 如果可能的话,我希望能够在鼠标上更改鼠标光标。
我不知道你是否可以触发这样做。
[编辑] mah:Tile继承自System.Windows.Controls.Button。 谢谢
答案 0 :(得分:4)
你离得太远了。你需要的只是一个响应IsMouseOver
的触发器,并且有一个突出显示的刷子颜色&#34;何时True
,以及False
时的默认颜色。
<Style x:Key="SearchTile" TargetType="mah:Tile">
<Setter Property="Background" Value="{StaticResource SearchTileBrush}" />
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="{StaticResource SearchTyleHighlightedBrush}" />
</Trigger>
</Style.Triggers>
</Style>