protected override void OnPointerPressed(PointerPressEventArgs e) { e.Device.Capture(this); _lastPoint = e.GetPosition(this); var ev = new VectorEventArgs { RoutedEvent = DragStartedEvent, Vector = (Vector)_lastPoint, }; RaiseEvent(ev); }
protected override void OnPointerPressed(PointerPressEventArgs e) { if (e.Source == _presenter) { var point = e.GetPosition(_presenter); var index = CaretIndex = _presenter.GetCaretIndex(point); var text = Text; switch (e.ClickCount) { case 1: SelectionStart = SelectionEnd = index; break; case 2: if (!StringUtils.IsStartOfWord(text, index)) { SelectionStart = StringUtils.PreviousWord(text, index, false); } SelectionEnd = StringUtils.NextWord(text, index, false); break; case 3: SelectionStart = 0; SelectionEnd = text.Length; break; } e.Device.Capture(_presenter); e.Handled = true; } }