星空网 > 软件开发 > ASP.net

【WPF】使用 XAML 的 Trigger 系统实现三态按钮

利用 WPF 的 Trigger 系统,也可以很简单的只使用xmal实现三态按钮。在Window或UserControl的资源中声明按钮的style并加入触发功能。使用的时候直接在button里复写style就可以了,废话不多说,直接上代码:

<UserControl.Resources>    <Style x:Key="threeStateButton" TargetType="{x:Type Button}">      <Setter Property="SnapsToDevicePixels" Value="True"/>      <Setter Property="OverridesDefaultStyle" Value="True"/>      <Setter Property="Template">        <Setter.Value>          <ControlTemplate TargetType="{x:Type Button}">            <StackPanel Orientation="Horizontal" >              <Image Name="ImgBtnBg3"                  Source="Skins/Default/action_normal.png" />            </StackPanel>            <ControlTemplate.Triggers>              <Trigger Property="IsMouseOver" Value="True">                <Setter Property="Source"                     Value="Skins/Default/action_selected.png"                     TargetName="ImgBtnBg3"/>              </Trigger>              <Trigger Property="IsPressed" Value="True">                <Setter Property="Source"                     Value="Skins/Default/action_active.png"                     TargetName="ImgBtnBg3"/>              </Trigger>              <Trigger Property="IsEnabled" Value="False">                <Setter Property="Source"                     Value="Skins/Default/action_normal.png"                     TargetName="ImgBtnBg3"/>              </Trigger>            </ControlTemplate.Triggers>          </ControlTemplate>        </Setter.Value>      </Setter>    </Style>  </UserControl.Resources>

 

使用时在button中引用:

<Button x:Name="m_btn" Content="Button" HorizontalAlignment="Center" Width="60" Height="60"
               VerticalAlignment="Center" />




原标题:【WPF】使用 XAML 的 Trigger 系统实现三态按钮

关键词:wpf

wpf
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流