本文整理汇总了C#中UIElement.MoveTo方法的典型用法代码示例。如果您正苦于以下问题:C# UIElement.MoveTo方法的具体用法?C# UIElement.MoveTo怎么用?C# UIElement.MoveTo使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UIElement
的用法示例。
在下文中一共展示了UIElement.MoveTo方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: AsMovableByMouse
public AsMovableByMouseControl AsMovableByMouse(UIElement e, Action Update)
{
var c = new AsMovableByMouseControl();
var q = false;
#region iAtMouseDown
Action<object> iAtMouseDown =
(sender) =>
{
q = true;
if (c.Enter != null)
c.Enter();
};
int iAtMouseDownContext = this._AtMouseDown.Count;
this._AtMouseDown.Add(iAtMouseDown);
e.MouseLeftButtonDown +=
delegate
{
this.AtMouseDown(null, iAtMouseDownContext);
};
#endregion
Action<object, int, int> iAtMouseMove =
(sender, px, py) =>
{
e.MoveTo(Canvas.GetLeft(e) + px - 3, Canvas.GetTop(e) + py - 3);
if (Update != null)
Update();
};
var cAtMouseMove = this._AtMouseMove.Count;
this._AtMouseMove.Add(iAtMouseMove);
this.MouseMove +=
(sender, args) =>
{
if (!q)
return;
var p = args.GetPosition(e);
//Console.WriteLine(new { p.X, p.Y });
this.AtMouseMove(null, cAtMouseMove, Convert.ToInt32(p.X), Convert.ToInt32(p.Y));
};
#region iAtMouseUp
Action<object> iAtMouseUp =
(sender) =>
{
if (!q)
return;
q = false;
if (c.Exit != null)
c.Exit();
};
int iAtMouseUpContext = this._AtMouseUp.Count;
this._AtMouseUp.Add(iAtMouseUp);
e.MouseLeftButtonUp +=
delegate
{
this.AtMouseUp(null, iAtMouseUpContext);
};
#endregion
return c;
}