<Button Content="Button" Height="125" HorizontalAlignment="Left" Margin="350,12,0,0" Name="button3" Style="{DynamicResource ButtonStyle}" VerticalAlignment="Top" Width="130">
<Button.Template>
<ControlTemplate>
<Image Source=".\drag3.png" />
</ControlTemplate>
</Button.Template>
</Button>
用以上代码实现了一个图片按钮,谁知道怎么给这个按钮加上按下弹起效果和按钮发光的效果啊
这里需要两步,第一步,用blend4制作你需要的图片(发光效果等)第二步,在按钮按下事件中更换按钮图片(你要求效果的图片)。就是利用按钮事件切换图片效果,你试试!
使用Blend来给控件添加触发器,触发器有如鼠标悬浮、鼠标离开、单击等。Ps在项目中尽量不要使用DynamicResource 这个来查找资源,应该尽量使用StaticResource来查找,DynamicResource是每一次都在全局中查找一次需要用到的资源,而StaticResource是在程序加载时,只查找一次。
<Button> <Button.Template> <ControlTemplate TargetType="Button"> <Image x:Name="image" Source=".\button_up.png" /> <ControlTemplate.Triggers> <Trigger Property="IsPressed" Value="True"> <Setter TargetName="image" Property="Source" Value=".\button_down.png"/> </Trigger> </ControlTemplate.Triggers> </ControlTemplate> </Button.Template> </Button>
发光效果不用做,直接做一个发光效果的ico就好了。
<Style TargetType="{x:Type Button}" x:Key="ButtonStyle">
<Style.Triggers>
<!--鼠标滑过按钮时按钮的发光效果-->
<Trigger Property="Button.IsMouseOver" Value="True">
<Trigger.Setters>
<Setter Property="Image.Effect">
<Setter.Value>
<DropShadowEffect BlurRadius="40" ShadowDepth="1" Color="White" Opacity="0.7"/>
</Setter.Value>
</Setter>
</Trigger.Setters>
</Trigger>
<!--按钮按下时按下弹起效果-->
<Trigger Property="Button.IsPressed" Value="True">
<Setter Property="RenderTransform">
<Setter.Value>
<ScaleTransform ScaleX="0.95" ScaleY="0.95"/>
</Setter.Value>
</Setter>
<Setter Property="RenderTransformOrigin" Value=".5,.5"/>
</Trigger>
</Style.Triggers>
</Style>