一、最终实现的效果
二、添加代码到App.xaml页面的Application.Resources里
三、在每个按钮的代码里,插入:Style="{StaticResource MyButton}"
一、最终实现的效果
如图所示,有四个按钮:板块、Word、Text、P-R。这四个按钮。这四个按钮之间无边界,并且当鼠标悬停到某一个按钮时,不会使得整个按钮带高亮效果,只会显示文字,并且高亮文字,这就特别符合简约风的风格,也是现在比较热门的按钮风格之一。
<Style x:Key="MyButton" TargetType="Button">
<Setter Property="OverridesDefaultStyle" Value="True" />
<Setter Property="Cursor" Value="Hand" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border Name="border" BorderThickness="0" BorderBrush="Black" Background="{TemplateBinding Background}">
<ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center" />
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Opacity" Value="0.8" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
主要有以下几种事件: 主要事件 子事件 触发条件 MouseHover
鼠标悬停
在控件发生 MouseLeave 鼠标离开控件
时
发生 EventHandler MouseEnter 鼠标进入控件
时
发生 EventHandler MouseMove 鼠标移动过程中重复发生 MouseEventHandler MouseDown 鼠标键按下
时
发生 MouseEventHandler MouseLeft
就会有个
悬停
效果
,这样一方面影响美观,另一方面看不出来触发
效果
,我们要取消这个
悬停
效果
。这样就能取消
悬停
效果
了,只要我们使用
按钮
时
候添加上这个模板,就是style这个。当我们在使用
wpf
的button
按钮
时
候,鼠标放在
按钮
上,不点击
时
。
<Style x:Key="MyButton" TargetType="Button">
<Setter Property="OverridesDefaultStyle" Value="True" />
<Setter Property="Cursor" Va...
工具提示、信息提示或提示 - 各种名称,但概念保持不变:通过将
鼠标悬停
在特定控件或链接上,可以获得有关特定控件或链接的相关信息的提示。
WPF
显然也支持这个概念,并且通过使用在FrameworkElement类中找到的ToolTip属性 ,几乎所有
WPF
控件都继承自该类。
为控件指定工具提示非常简单,您将在第一个非常基本的示例中看到:
<Window x:Class="
Wpf
TutorialSamples.Control_concepts.ToolTipsSimpleSample"
正则表达式如下
private static readonly Regex IgnoreIdentifierRegex = new Regex(@"^([Bb]in|[Oo]bj|[Dd]ebug|[Rr]elease|[Xx]86|[Xx]64|net[\.\w]*\d+)$&...
WPF
之Button样式_
鼠标悬停
透明,不变白XAML:使用前:使用后:
XAML:
<Style x:Key="ChangeButtonIsMouseOver" TargetType="Button">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Border Name="border" BorderThickn
<Image Width="50" Source="pack://siteoforigin:,,,/images/system/all_clear.png">
<Image.ToolTip>
<ToolTip Placement ="Top">
<ToolTip.Template>
<ControlTemplate>
Window.Resources> Style TargetType="{x:Type Button}"> Style.Triggers> Trigger Property="IsMouseOver" Value="True"> Set