Silverlight专题(15) - 你自己的视频播放器之自定义MoveToPointSlider
2009-01-13 11:55:44 来源:WEB开发网而右边的RepeatButton在第3列,占据了剩下的空间,其宽度设置为*
(有关Grid的布局介绍请参见Silverlight专题(8)-布局介绍)
现在我们需要在第一以及第三列上各覆盖上一个Rectangle来响应鼠标的点击
使的其能实现我们的预期效果
具体实现步骤如下:
1.给程序添加一个类如下图所示
2.让这个类继承Slider类
3.实现功能如下
MoveToPointSlider
1publicclass MoveToPointSlider : Slider
2{
3 private Thumb m_horizontalThumb;
4 private FrameworkElement m_leftTrack;
5 private FrameworkElement m_rightTrack;
6
7 publicoverridevoid OnApplyTemplate()
8 {
9 base.OnApplyTemplate();
10 base.OnApplyTemplate();
11 m_horizontalThumb = GetTemplateChild("HorizontalThumb") as Thumb;
12 m_leftTrack = GetTemplateChild("LeftTrack") as FrameworkElement;
13 if (m_leftTrack !=null)
14 this.m_leftTrack.MouseLeftButtonDown +=new MouseButtonEventHandler(OnMoveThumbToMouse);
15
16 m_rightTrack = GetTemplateChild("RightTrack") as FrameworkElement;
17 if (m_rightTrack !=null)
18 this.m_rightTrack.MouseLeftButtonDown +=new MouseButtonEventHandler(OnMoveThumbToMouse);
19 }
20
21 void OnMoveThumbToMouse(object sender, MouseButtonEventArgs e)
22 {
23 Point p = e.GetPosition(this);
24 Value = (p.X - (m_horizontalThumb.ActualWidth /2)) / (ActualWidth - m_horizontalThumb.ActualWidth) * Maximum;
25 }
26}
Tags:Silverlight 专题 自己
编辑录入:爽爽 [复制链接] [打 印]- ››silverlight全屏显示图片
- ››Silverlight MVVM 模式(一) 切近实战
- ››自己动手写iPhone wap浏览器之界面架构篇
- ››Silverlight for Windows Phone 7开发系列(1):...
- ››Silverlight for Windows Phone 7开发系列(2):...
- ››Silverlight for Windows Phone 7开发系列(3):...
- ››Silverlight for Windows Phone 7开发系列(4):...
- ››自己也能DIY个性真人QQ表情
- ››自己动手!巧法让酷狗动感歌词更完美
- ››自己编译Google Android内核的Linux源码
- ››自己写的一个jquery模板引擎(json比较好用)
- ››自己定义Android堆内存大小
更多精彩
赞助商链接