silverlight 常用特效

在一些游戏和商业软件开发的应用中,为了让我们的用户体验更好的使用体验,我们常常会在鼠标事件中做一些特效让用户觉得更贴心,也让程序更美观。开心银光在这里介绍一个非常常用的silverlight 特效。

System.Windows.Media.Effects.DropShadowEffect

它有几个属性。大家可以自行试试,相当简单。所以开心银光在这里不作祥解,接下来是演示代码:

以下是实现一个很简单的功能,只要鼠标移到button上就启动特效。鼠标离开时我们清除特效:

a)xaml部分:

1:      <Grid x:Name="LayoutRoot" Background="White">
2:          <Button Content="Button" Height="23" HorizontalAlignment="Left" Margin="10,10,0,0" Name="button1" VerticalAlignment="Top" Width="75" />
3:      </Grid>
4:  

相当简单,我只加了一个button控件。其他什么都没有。

b)c#部份:

 1:  namespace SilverlightApplication20
 2:  {
 3:      public partial class MainPage : UserControl
 4:      {
 5:          public MainPage()
 6:          {
 7:              InitializeComponent();
 8:              button1.MouseEnter += new MouseEventHandler(button1_MouseEnter);
 9:              button1.MouseLeave += new MouseEventHandler(button1_MouseLeave);
10:          }
11:  
12:          void button1_MouseLeave(object sender, MouseEventArgs e)
13:          {
14:              button1.Effect = null;
15:          }
16:  
17:          void button1_MouseEnter(object sender, MouseEventArgs e)
18:          {
19:              System.Windows.Media.Effects.DropShadowEffect ds = new System.Windows.Media.Effects.DropShadowEffect();
20:              ds.ShadowDepth = 0;
21:              ds.Color = Colors.Yellow;
22:              button1.Effect = ds;
23:          }
24:      }
25:  }
26:  

以上是的ShadowDepth是光影的偏移量,我设为零是表达不偏移,很多游戏和应用程序都喜欢这样的使用效果。

posted @ 2012-12-09 15:26  黎东海  阅读(310)  评论(0编辑  收藏  举报