Silverlight实现鼠标拖动Usercontrol或图片等很简单
实现原理,根据鼠标的移动位置在MouseMove事件中更新LeftProperty和TopProperty属性
private void Canvas_MouseMove(object sender, MouseEventArgs e)
{
Point p = e.GetPosition(sender as FrameworkElement);//获取鼠标位置
myControl.SetValue(Canvas.LeftProperty, p.X);//设置x坐标
myControl.SetValue(Canvas.TopProperty, p.Y);//设置y坐标
myControl.Cursor = Cursors.None;//隐藏鼠标
}
要实现控件的拖放只需相应的附加MouseLeftButtonDown和MouseLeftButtonUp事件处理即可。
实现原理,根据鼠标的移动位置在MouseMove事件中更新LeftProperty和TopProperty属性
private void Canvas_MouseMove(object sender, MouseEventArgs e)
{
Point p = e.GetPosition(sender as FrameworkElement);//获取鼠标位置
myControl.SetValue(Canvas.LeftProperty, p.X);//设置x坐标
myControl.SetValue(Canvas.TopProperty, p.Y);//设置y坐标
myControl.Cursor = Cursors.None;//隐藏鼠标
}
要实现控件的拖放只需相应的附加MouseLeftButtonDown和MouseLeftButtonUp事件处理即可。
浙公网安备 33010602011771号