本文整理匯總了C#中Perspex.Input.PointerEventArgs類的典型用法代碼示例。如果您正苦於以下問題:C# PointerEventArgs類的具體用法?C# PointerEventArgs怎麽用?C# PointerEventArgs使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
PointerEventArgs類屬於Perspex.Input命名空間,在下文中一共展示了PointerEventArgs類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。
示例1: RemoveAdorner
protected void RemoveAdorner(object sender, PointerEventArgs e)
{
if (this.adorner != null)
{
((Panel)this.adorner.Parent).Children.Remove(this.adorner);
this.adorner = null;
}
}
示例2: RootPointerMoved
private void RootPointerMoved(object sender, PointerEventArgs e)
{
var modifiers = InputModifiers.Control | InputModifiers.Shift;
if ((e.InputModifiers & modifiers) == modifiers)
{
var vm = (DevToolsViewModel)DataContext;
vm.SelectControl((IControl)e.Source);
}
}
示例3: OnPointerMoved
protected override void OnPointerMoved(PointerEventArgs e)
{
if (_lastPoint.HasValue)
{
var ev = new VectorEventArgs
{
RoutedEvent = DragDeltaEvent,
Vector = e.GetPosition(this) - _lastPoint.Value,
};
RaiseEvent(ev);
}
}
示例4: AddAdorner
protected void AddAdorner(object sender, PointerEventArgs e)
{
var node = (TreeNode)((Control)sender).DataContext;
var layer = AdornerLayer.GetAdornerLayer(node.Control);
if (layer != null)
{
this.adorner = new Rectangle
{
Fill = new SolidColorBrush(0x80a0c5e8),
[AdornerLayer.AdornedElementProperty] = node.Control,
};
layer.Children.Add(this.adorner);
}
}
示例5: OnPointerMoved
protected override void OnPointerMoved(PointerEventArgs e)
{
if (_presenter != null && e.Device.Captured == _presenter)
{
var point = e.GetPosition(_presenter);
CaretIndex = SelectionEnd = _presenter.GetCaretIndex(point);
}
}
示例6: SetPointerOver
private IInputElement SetPointerOver(IPointerDevice device, IInputRoot root, IList<IInputElement> elements)
{
foreach (var control in _pointerOvers.Except(elements).ToList())
{
PointerEventArgs e = new PointerEventArgs
{
RoutedEvent = InputElement.PointerLeaveEvent,
Device = device,
Source = control,
};
_pointerOvers.Remove(control);
control.RaiseEvent(e);
}
foreach (var control in elements.Except(_pointerOvers))
{
PointerEventArgs e = new PointerEventArgs
{
RoutedEvent = InputElement.PointerEnterEvent,
Device = device,
Source = control,
};
_pointerOvers.Add(control);
control.RaiseEvent(e);
}
root.PointerOverElement = elements.FirstOrDefault() ?? root;
return root.PointerOverElement;
}
示例7: ClearPointerOver
private void ClearPointerOver(IPointerDevice device)
{
foreach (var control in this.pointerOvers.ToList())
{
PointerEventArgs e = new PointerEventArgs
{
RoutedEvent = InputElement.PointerLeaveEvent,
Device = device,
OriginalSource = control,
Source = control,
};
this.pointerOvers.Remove(control);
control.RaiseEvent(e);
}
}
示例8: OnPointerMoved
/// <summary>
/// Called before the <see cref="PointerMoved"/> event occurs.
/// </summary>
/// <param name="e">The event args.</param>
protected virtual void OnPointerMoved(PointerEventArgs e)
{
}
示例9: OnPointerEnter
/// <summary>
/// Called before the <see cref="PointerEnter"/> event occurs.
/// </summary>
/// <param name="e">The event args.</param>
protected virtual void OnPointerEnter(PointerEventArgs e)
{
IsPointerOver = true;
}
示例10: OnPointerEnter
/// <summary>
/// Called when the pointer enters the <see cref="MenuItem"/>.
/// </summary>
/// <param name="e">The event args.</param>
protected override void OnPointerEnter(PointerEventArgs e)
{
base.OnPointerEnter(e);
var menu = this.Parent as Menu;
if (menu != null)
{
if (menu.IsOpen)
{
this.IsSubMenuOpen = true;
}
}
else if (this.HasSubMenu && !this.IsSubMenuOpen)
{
this.submenuTimer = DispatcherTimer.Run(
() => this.IsSubMenuOpen = true,
TimeSpan.FromMilliseconds(400));
}
}
示例11: OnPointerReleased
protected override void OnPointerReleased(PointerEventArgs e)
{
if (_lastPoint.HasValue)
{
e.Device.Capture(null);
_lastPoint = null;
var ev = new VectorEventArgs
{
RoutedEvent = DragCompletedEvent,
Vector = (Vector)e.GetPosition(this),
};
RaiseEvent(ev);
}
}
示例12: HandleMouseDoubleClick
/// <summary>
/// Handle mouse double click to select word under the mouse.
/// </summary>
/// <param name="parent">the control hosting the html to set cursor and invalidate</param>
/// <param name="e">mouse event args</param>
public void HandleMouseDoubleClick(Control parent, PointerEventArgs e)
{
ArgChecker.AssertArgNotNull(parent, "parent");
ArgChecker.AssertArgNotNull(e, "e");
_htmlContainerInt.HandleMouseDoubleClick(new ControlAdapter(parent), Util.Convert(e.GetPosition(parent)));
}
示例13: HandleLeftMouseUp
/// <summary>
/// Handle mouse up to handle selection and link click.
/// </summary>
/// <param name="parent">the control hosting the html to invalidate</param>
/// <param name="e">the mouse event args</param>
public void HandleLeftMouseUp(Control parent, PointerEventArgs e)
{
ArgChecker.AssertArgNotNull(parent, "parent");
ArgChecker.AssertArgNotNull(e, "e");
var mouseEvent = new RMouseEvent(true);
_htmlContainerInt.HandleMouseUp(new ControlAdapter(parent), Util.Convert(e.GetPosition(parent)), mouseEvent);
}
示例14: MouseMove
private bool MouseMove(IMouseDevice device, IInputRoot root, Point p, InputModifiers inputModifiers)
{
IInputElement source;
if (Captured == null)
{
source = SetPointerOver(this, root, p);
}
else
{
var elements = Captured.GetSelfAndVisualAncestors().OfType<IInputElement>().ToList();
SetPointerOver(this, root, elements);
source = Captured;
}
var e = new PointerEventArgs
{
Device = this,
RoutedEvent = InputElement.PointerMovedEvent,
Source = source,
InputModifiers = inputModifiers
};
source.RaiseEvent(e);
return e.Handled;
}
示例15: OnPointerReleased
protected override void OnPointerReleased(PointerEventArgs e)
{
if (_presenter != null && e.Device.Captured == _presenter)
{
e.Device.Capture(null);
}
}