如何把Button按钮样式换成ImageButton?
来源:互联网 发布:淘宝七天退货时间计算 编辑:程序博客网 时间:2024/05/09 03:58
问题描述
解决方案
最直接的办法就是把button的content设置为图片,还有一个比较通用的办法就是把这个button做成一个模板化控件。
新建一个名称为ImageButton的模板化控件,在cs文件里加上一个Icon属性,前台模板里对应的加上一个图片,然后实现Icon的属性,要用到类似下面的代码来注册一下这个属性
public object Title
{
get { return GetValue(TitleProperty); }
set { SetValue(TitleProperty, value); }
}public static readonly DependencyProperty TitleProperty =
DependencyProperty.Register(
“Title”,
typeof(object),
typeof(TWindow),
null);
最后不要忘记重写OnApplyTemplate,类似
public override void OnApplyTemplate()
{
base.OnApplyTemplate();
}
的代码就可以搞定,在这里面可以用GetTemplateChild(控件名称)来得到模板里的控件,组织一下就得到了一个通用的ImageButton控件。
附上我做的一个效果:
代码如下:
<Style x:Key="StyleCode" TargetType="{x:Type Button}"><Setter Property="Template"><Setter.Value><ControlTemplate TargetType="{x:Type Button}"><Border x:Name="borderBG"><Border.Background><ImageBrush ImageSource="../Resources/register/code-btn.png"/></Border.Background><ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/></Border><ControlTemplate.Triggers><Trigger Property="IsMouseOver" Value="True"><Setter TargetName="borderBG" Property="Background"><Setter.Value><ImageBrush ImageSource="../Resources/register/code-btn-hover.png" /></Setter.Value></Setter></Trigger></ControlTemplate.Triggers></ControlTemplate></Setter.Value></Setter></Style>
参考
http://stackoverflow.com/questions/3965427/wpf-set-border-background-in-trigger
- 如何把Button按钮样式换成ImageButton?
- 如何把上传文件的浏览按钮换成其他样式 或者图片
- 按钮控件(Button,LinkButton,ImageButton)
- Button(按钮)与ImageButton(图像按钮)
- android 学习 ---控件按钮,Button 与ImageButton,
- 自定义button按钮样式
- Button按钮自定义样式
- HTML控件Input(File)中如何把浏览按钮的背景更换成图片
- 【6】Button(按钮)与ImageButton(图像按钮)
- Android练习-----普通按钮(Button) && 图片按钮(ImageButton)
- Android学习路之Button(按钮)与ImageButton(图像按钮)
- 界面组件——按钮(Button)与图片按钮(ImageButton)
- button按钮不错的样式
- SWT/Jface Button 按钮样式
- button按钮常用样式设计
- 小程序 按钮Button样式
- Android 应用开发笔记 - 按钮(Button, ImageButton)
- 02 - 基本控件:按钮控件(Button、ImageButton、ToggleButton)
- mysql高级:数据库优化
- ElementTree排序问题
- TCP/IP 详解 卷1 第1章 读书笔记
- 113-Remove Duplicates from Sorted List
- 人生需要整理
- 如何把Button按钮样式换成ImageButton?
- IDM杨幂版
- STL关联容器概述
- 禁止拖拽时选中文本的方法
- WebView问题总汇
- 你的时间有限,不要为别人而活
- 八进制转换
- STL中部分函数的实现
- 如何在silverlight中画线?