Exemplo n.º 1
0
 private void TreePrePaintItem(object sender, PaintTreeItemEventArgs args)
 {
     if ((_dropHighlightNode != null) && (_dropLinePosition == DropLinePosition.OnNode))
     {
         if (args.Node.Equals(_dropHighlightNode))
         {
             args.BackColor = _dropHighlightBackColor;
             args.ForeColor = _dropHighlightForeColor;
         }
     }
 }
Exemplo n.º 2
0
        private void TreePostPaintItem(object sender, PaintTreeItemEventArgs args)
        {
            if ((_dropHighlightNode != null) && (_dropHighlightNode == args.Node) && (_dropLinePosition != DropLinePosition.None))
            {
                using (System.Drawing.Pen pen = new System.Drawing.Pen(_dropLineColor, _dropLineWidth))
                {
                    int leftEdge = args.Node.Bounds.Left - 4;
                    if (args.Node.ImageIndex >= 0)
                    {
                        leftEdge -= 20;
                    }

                    System.Windows.Forms.TreeView tree = args.Node.TreeView;
                    int rightEdge = tree.DisplayRectangle.Right - 4;

                    int lineVPosition;

                    if ((_dropLinePosition & DropLinePosition.AboveNode) == DropLinePosition.AboveNode)
                    {
                        lineVPosition = _dropHighlightNode.Bounds.Top;
                        args.Graphics.DrawLine(pen, leftEdge, lineVPosition, rightEdge, lineVPosition);
                        pen.Width = 1;
                        args.Graphics.DrawLine(pen, leftEdge, lineVPosition - 3, leftEdge, lineVPosition + 2);
                        args.Graphics.DrawLine(pen, leftEdge + 1, lineVPosition - 2, leftEdge + 1, lineVPosition + 1);
                        args.Graphics.DrawLine(pen, rightEdge, lineVPosition - 3, rightEdge, lineVPosition + 2);
                        args.Graphics.DrawLine(pen, rightEdge - 1, lineVPosition - 2, rightEdge - 1, lineVPosition + 1);
                    }
                    if ((_dropLinePosition & DropLinePosition.BelowNode) == DropLinePosition.BelowNode)
                    {
                        lineVPosition = _dropHighlightNode.Bounds.Bottom;
                        args.Graphics.DrawLine(pen, leftEdge, lineVPosition, rightEdge, lineVPosition);
                        pen.Width = 1;
                        args.Graphics.DrawLine(pen, leftEdge, lineVPosition - 3, leftEdge, lineVPosition + 2);
                        args.Graphics.DrawLine(pen, leftEdge + 1, lineVPosition - 2, leftEdge + 1, lineVPosition + 1);
                        args.Graphics.DrawLine(pen, rightEdge, lineVPosition - 3, rightEdge, lineVPosition + 2);
                        args.Graphics.DrawLine(pen, rightEdge - 1, lineVPosition - 2, rightEdge - 1, lineVPosition + 1);
                    }
                }
            }
        }