當前位置: 首頁>>代碼示例>>C#>>正文


C# Input.PointerEventArgs類代碼示例

本文整理匯總了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;
     }
 }
開發者ID:Scellow,項目名稱:Perspex,代碼行數:8,代碼來源:TreePage.cs

示例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);
            }
        }
開發者ID:abdelkarim,項目名稱:Perspex,代碼行數:10,代碼來源:DevTools.paml.cs

示例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);
            }
        }
開發者ID:healtech,項目名稱:Perspex,代碼行數:13,代碼來源:Thumb.cs

示例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);
            }
        }
開發者ID:Scellow,項目名稱:Perspex,代碼行數:16,代碼來源:TreePage.cs

示例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);
     }
 }
開發者ID:strogo,項目名稱:Perspex,代碼行數:8,代碼來源:TextBox.cs

示例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;
        }
開發者ID:rdterner,項目名稱:Perspex,代碼行數:31,代碼來源:MouseDevice.cs

示例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);
            }
        }
開發者ID:Robertofon,項目名稱:Perspex,代碼行數:16,代碼來源:MouseDevice.cs

示例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)
 {
 }
開發者ID:Arlorean,項目名稱:Perspex,代碼行數:7,代碼來源:InputElement.cs

示例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;
 }
開發者ID:Arlorean,項目名稱:Perspex,代碼行數:8,代碼來源:InputElement.cs

示例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));
            }
        }
開發者ID:MarkWalls,項目名稱:Perspex,代碼行數:24,代碼來源:MenuItem.cs

示例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);
            }
        }
開發者ID:healtech,項目名稱:Perspex,代碼行數:16,代碼來源:Thumb.cs

示例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)));
        }
開發者ID:Arlorean,項目名稱:Perspex,代碼行數:12,代碼來源:HtmlContainer.cs

示例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);
        }
開發者ID:Arlorean,項目名稱:Perspex,代碼行數:13,代碼來源:HtmlContainer.cs

示例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;
        }
開發者ID:KvanTTT,項目名稱:Perspex,代碼行數:26,代碼來源:MouseDevice.cs

示例15: OnPointerReleased

 protected override void OnPointerReleased(PointerEventArgs e)
 {
     if (_presenter != null && e.Device.Captured == _presenter)
     {
         e.Device.Capture(null);
     }
 }
開發者ID:strogo,項目名稱:Perspex,代碼行數:7,代碼來源:TextBox.cs


注:本文中的Perspex.Input.PointerEventArgs類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。