SilverLight的使用可以帮助开发人员轻松的解决一些以前爱只能依靠美工才能解决的相关开发问题。现在我们将会学到其中的一个使用技巧,就是SilverLight拖动的实现方式。#t#
创新互联公司是一家专业提供汕城企业网站建设,专注与成都网站制作、网站建设、HTML5、小程序制作等业务。10年已为汕城众多企业、政府机构等服务。创新互联专业的建站公司优惠进行中。
SilverLight拖动前台代码:
SilverLight拖动后台代码:
- using System;
- using System.Windows;
- using System.Windows.Controls;
- using System.Windows.Documents;
- using System.Windows.Ink;
- using System.Windows.Input;
- using System.Windows.Media;
- using System.Windows.Media.Animation;
- using System.Windows.Shapes;
- namespace SilverlightApplication6
- {
- public partial class Page : UserControl
- {
- bool trackingMouseMove = false;
- Point mousePosition;
- public Page()
- {
- // 需要初始化变量
- InitializeComponent();
- }
- private void Image_MouseLeftButtonDown
(object sender, MouseButtonEventArgs e)- {
- FrameworkElement element =
sender as FrameworkElement;- mousePosition = e.GetPosition(null);
- trackingMouseMove = true;
- if (null != element)
- {
- element.CaptureMouse();
- element.Cursor = Cursors.Hand;
- }
- }
- private void Image_MouseMove(object
sender, MouseEventArgs e)- {
- FrameworkElement element = sender
as FrameworkElement;- if (trackingMouseMove)
- {
- double deltaV = e.GetPosition(null).
Y - mousePosition.Y;- double deltaH = e.GetPosition(null).
X - mousePosition.X;- double newTop = deltaV + (double)element.
GetValue(Canvas.TopProperty);- double newLeft = deltaH + (double)
element.GetValue(Canvas.LeftProperty);- element.SetValue(Canvas.TopProperty, newTop);
- element.SetValue(Canvas.LeftProperty, newLeft);
- mousePosition = e.GetPosition(null);
- }
- }
- private void Image_MouseLeftButtonUp
(object sender, MouseButtonEventArgs e)- {
- FrameworkElement element = sender
as FrameworkElement;- trackingMouseMove = false;
- element.ReleaseMouseCapture();
- mousePositionmousePosition.X =
mousePosition.Y = 0;- element.Cursor = null;
- }
- }
- }
以上就是对SilverLight拖动相关实现方法做得具体介绍。
本文题目:SilverLight拖动具体实现方式介绍
网站路径:http://www.mswzjz.cn/qtweb/news21/302671.html
攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能