WPF控件-TimeLine
用途为播放器的进度显示,显示当前时刻,标记的时刻,拖动进度条来改变播放进度。我们专业点的叫法是Seek、InPoint、OutPoint、Duration等。
控件比较简单,实现方式为自定义的背景面板,重载OnRender进行绘制,从而来显示刻度等,拖动用Slider控件,通过修改Style和Template,使其RepeatButton的Background为Transparent即可,Thumb修改模板,构造适合的外观。这样背景面板和slider就构成了所需的控件。
所有刻度值都可以绑定到VM的属性,如Slider的Max绑定到视频的长度,Value绑定到视频的当前位置。
目前只是完成了功能,UI方面还需要根据美工的建议来具体打磨。此外,TimeLine控件可以有更多的扩展,例如缩放功能等,面板里也可以加入一些UIElement形成新的功能,如下将对象按照时间排列等,不一而足;
代码已经PUSH到我的GitHub,有兴趣的可以Clone下来看一下。
有任何疑问或者建议可以给我留言,期待与大家的交流。
GiHub地址:https://github.com/HanRuibin/HControls.git
评论