Esempio n. 1
0
        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;
                }
            }
        }
Esempio n. 2
0
 public ReactorTask()
 {
     focusRect = new FocusAdorner(this);
 }