Source/AdvTree/Display/ColumnHeaderDisplay.cs

(完整代码) 1KB

using System;
using System.Text;
using DevComponents.DotNetBar;
using System.Drawing;

namespace DevComponents.AdvTree.Display
{
    internal class ColumnHeaderDisplay
    {
        internal void DrawColumnHeader(ColumnHeaderRendererEventArgs e, ElementStyleDisplayInfo di)
        {
            ElementStyleDisplay.Paint(di);
            di.Bounds.Inflate(-1, -1);
            if (di.Bounds.Width > 1 && di.Bounds.Height > 1)
            {
                if (e.ColumnHeader.IsFirstVisible)
                {
                    Rectangle r = di.Bounds;
                    r.Width -= 3;
                    r.X += 3;
                    di.Bounds = r;
                }

                if (e.ColumnHeader.Image != null)
                {
                    Image image = e.ColumnHeader.Image;
                    Rectangle r = di.Bounds;
                    if (e.ColumnHeader.ImageAlignment == eColumnImageAlignment.Left)
                    {
                        e.Graphics.DrawImage(image, r.X,
                                              r.Y + (r.Height - image.Height) / 2, image.Width, image.Height);
                        r.X += image.Width + 2;
                        r.Width -= image.Width + 2;

                    }
                    else if (e.ColumnHeader.ImageAlignment == eColumnImageAlignment.Right)
                    {
                        e.Graphics.DrawImage(image, r.Right - image.Width,
                                              r.Y + (r.Height - image.Height) / 2, image.Width, image.Height);
                        r.Width -= image.Width + 2;
                    }
                    di.Bounds = r;
                }

                ElementStyleDisplay.PaintText(di, e.ColumnHeader.Text, e.Tree.Font);
            }
        }
    }
}

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。