前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Silverlight制作scrollbar.

Silverlight制作scrollbar.

作者头像
用户1172164
发布2018-01-16 11:53:13
6130
发布2018-01-16 11:53:13
举报

最近要用silverlight开发一个小程序.做了一个scrollbar.其实sl自己带了这个控件,但是如果要样式和自己的程序的风格完全一致的话也是有些难度的.索性自己就简单的做了一个.这里记录一下开发的步骤.

效果图:

功能:

  1. 适应浏览器高度.
  2. 在拖动时返回移动的百分数
  3. 可设置滚动按钮的位置

好了明确了要的功能那就正式开始吧~

要和自己程序的样式一致那就先把设计师做的设计放进来.这里我用了两个元素.一个背景条和一个拖动按钮"Bar".

Bar我单独做成了一个控件.没什么代码就是Xaml.

这里要注意一下.在Bar这里控件中我在"UserControl"节点下加入了RenderTransform.并且让光标变成手型.又给RenderTransform下的TranslateTransform起了名字"xTranslateTransform".这样就可以直接对X和Y偏移进行设置.这样子做和对Canvas.LeftProperty Canvas.TopProperty进行设置达到的效果是一样的. 如果不习惯Canvas.LeftProperty Canvas.TopProperty.那就这样来吧.

好了Bar做完了那就可以用Bar来做ScrollBar了. 这里我用的布局是Canvas.默认建立的是Gread.

制作一个高300px的背景条.起名字为"xBg".并把刚才做好的Bar放到上边.使Bar在最上方.

好了到这里界面就做好了.该去实现功能了.

  • 定义onDrag事件.传递出参数为移动的百分数.
  • 定义高度属性
  • 定义移动百分数属性
  • 在初始化时设置高度为300.移动百分数为0.
  • 在设置移动百分数属性的同时对Bar的Y位移也进行设置.
  • 在设置高度属性的同时对xBg的高度进行设置.

下来对Bar做拖动的实现. 其实也就是一个drag.只是对Y属性设置而已.

用xBar.xTranslateTransform.Y=88.就可以了.

这里在Move时触发上边定义的onDrag事件.计算移动百分数并返回.

好了一个简单的scrollbar控件制作完成. ;)

简单的看一下如何使用.

说明一下"panelTranslateTransform.Y" 是目标元素的Y位移.

代码下载:(代码里的内容比较多.我这里只是介绍了scrollbar的制作 ^_^)

http://www.brsbox.com/filebox/down/fc/5a7301255667bfae7928bbbae540e5db

ok  结束

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2008-05-09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档