虚位以待(AD)
虚位以待(AD)
首页 > 网络编程 > ASP.NET > WPF图片按钮的实现方法

WPF图片按钮的实现方法
类别:ASP.NET   作者:码皇   来源:互联网   点击:

这篇文章主要为大家详细介绍了WPF图片按钮的实现方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了WPF图片按钮的实现代码,供大家参考,具体内容如下

直接代码

    public class ImageButton : System.Windows.Controls.Button {
    /// <summary> /// 图片 /// </summary> public static readonly DependencyProperty ImageProperty = DependencyProperty.Register("Image", typeof(ImageSource), typeof(ImageButton), new PropertyMetadata(null));
    /// <summary> /// 图片的宽度 /// </summary> public static readonly DependencyProperty ImageWidthProperty = DependencyProperty.Register("ImageWidth", typeof(double), typeof(ImageButton), new PropertyMetadata(double.NaN));
    /// <summary> /// 图片的高度 /// </summary> public static readonly DependencyProperty ImageHeightProperty = DependencyProperty.Register("ImageHeight", typeof(double), typeof(ImageButton), new PropertyMetadata(double.NaN));
    /// <summary> /// 构造函数 /// </summary> static ImageButton() {
    DefaultStyleKeyProperty.OverrideMetadata(typeof(ImageButton), new System.Windows.FrameworkPropertyMetadata(typeof(ImageButton)));
    }
    /// <summary> /// 设置图片 /// </summary> public ImageSource Image {
    get {
    return GetValue(ImageProperty) as ImageSource;
    }
    set {
    SetValue(ImageProperty, value);
    }
    }
    /// <summary> /// 图片宽度(属性) /// </summary> public double ImageWidth {
    get {
    return (double)GetValue(ImageWidthProperty);
    }
    set {
    SetValue(ImageWidthProperty, value);
    }
    }
    /// <summary> /// 图片高度(属性) /// </summary> public double ImageHeight {
    get {
    return (double)GetValue(ImageHeightProperty);
    }
    set {
    SetValue(ImageHeightProperty, value);
    }
    }
    }

样式代码

    <Style TargetType="{
    x:Type xi:ImageButton}
    "> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="{
    x:Type xi:ImageButton}
    "> <Grid> <Grid.RowDefinitions> <RowDefinition Height="*"/> <RowDefinition Height="Auto"/> </Grid.RowDefinitions> <Border x:Name="border" Grid.RowSpan="2" BorderBrush="{
    TemplateBinding BorderBrush}
    " BorderThickness="{
    TemplateBinding BorderThickness}
    " Background="{
    TemplateBinding Background}
    " SnapsToDevicePixels="true" CornerRadius="3,3,3,3"/> <Image Grid.Row="0" Source="{
    TemplateBinding Image}
    " Width="{
    TemplateBinding ImageWidth}
    " Height="{
    TemplateBinding ImageHeight}
    " VerticalAlignment="{
    TemplateBinding VerticalAlignment}
    "/> <ContentPresenter Grid.Row="1" HorizontalAlignment="Center" Margin="{
    TemplateBinding Padding}
    " VerticalAlignment="Center" RecognizesAccessKey="True" /> </Grid> <ControlTemplate.Triggers> <Trigger Property="IsPressed" Value="True"> <Setter Property="Foreground" Value="#999999"/> </Trigger> </ControlTemplate.Triggers> </ControlTemplate> </Setter.Value> </Setter> </Style>

调用实例

复制代码 代码如下:
 <xi:ImageButton Image="../Image/设置.png" Content="新增会员" ImageHeight="52" ImageWidth="52" Width="72" Height="72" Margin="30,10,10,10"/>

效果展示

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

  • WPF中button按钮同时点击多次触发click解决方法
  • WPF微信聊天和通讯录按钮样式代码分享
  • WPF MVVM制作发送短信小按钮
  • WPF水珠效果按钮组的实现教程
  • WPF制作带小箭头的按钮完整代码
  • WPF自定义控件和样式之自定义按钮(Button)
相关热词搜索: WPF 图片按钮