private void Test(Point point) { //获取TextPointer var poz = this.GetPositionFromPoint(point, true); //var nextPoz = poz.GetNextInsertionPosition(poz.LogicalDirection); if (poz != null) { var rect = poz.GetCharacterRect(LogicalDirection.Backward); //var range = new TextRange(poz, nextPoz); double y = rect.Y + (rect.Height - this.LineHeight) * 0.5; rect.Y = y + 5; rect.Height = this.LineHeight - 10; rect.Width = 1; if (_focusAdorner == null) { var adorLayer = AdornerLayer.GetAdornerLayer(this); _focusAdorner = new FocusAdorner(this, rect); adorLayer.Add(_focusAdorner); } else { _focusAdorner.Rect = rect; _focusAdorner.Visibility = Visibility.Visible; } } }
public ReactorTask() { focusRect = new FocusAdorner(this); }