WPF用图片的方式实现圆形按钮?
圆形按钮,用WPF贴图实现,该怎么做呢?
[解决办法]
自己定义按钮样式,使用图像画刷ImageBrush解决
[解决办法]
按钮的功能很简单,所以你只要画个圆,加上CLick MouseEnter MouseLeave 就可以变成自制按钮了
[解决办法]
<Style x:Key="ButtonStyle1" TargetType="{x:Type Button}"> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="{x:Type Button}"> <Grid> <Ellipse x:Name="ellipse" Fill="#FFF4F4F5" Stroke="Black"/> <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/> </Grid> <ControlTemplate.Triggers> <Trigger Property="IsFocused" Value="True"/> <Trigger Property="IsDefaulted" Value="True"/> <Trigger Property="IsMouseOver" Value="True"> <Setter Property="Fill" TargetName="ellipse" Value="Blue"/> </Trigger> <Trigger Property="IsPressed" Value="True"/> <Trigger Property="IsEnabled" Value="False"/> </ControlTemplate.Triggers> </ControlTemplate> </Setter.Value> </Setter> </Style>
[解决办法]
最简单的方法:
新建一个圆,如图片填充
<Ellipse Stroke="#FF000000" StrokeThickness="0"> <Ellipse.Fill> <ImageBrush ImageSource="msgsys_warn.png" Stretch="Uniform"/> </Ellipse.Fill></Ellipse>
[解决办法]
不用,你图片做成PNG即可,透明区域不会响应
参考下图
http://nonocast.cn/?attachment_id=4336
[解决办法]
使用Blend来制作,想变成什么样的按钮,就能实现什么样的按钮!
做WPF、Silverlight开发,Blend基本操作必须会!
[解决办法]