• winform listview美化


    listview设置行高

    listview本身是没有办法设置行高的,需要借助imagelist;

    ImageList iList = new ImageList();
    iList.ImageSize = new Size(1, 30);//宽度和高度值必须大于等于1且不超过256
    listView1.SmallImageList = iList;
    

    listview header添加边框、背景色

    private void listView_DrawColumnHeader(object sender, DrawListViewColumnHeaderEventArgs e)
    {
        e.Graphics.FillRectangle(Brushes.LightBlue, e.Bounds);
        e.DrawText();
        using (Pen p1 = new Pen(Color.FromArgb(227, 227, 227), 1))
        {
            e.Graphics.DrawLine(p1, e.Bounds.X + e.Bounds.Width, e.Bounds.Y, e.Bounds.X + e.Bounds.Width, e.Bounds.Y + e.Bounds.Height);
            e.Graphics.DrawLine(p1, e.Bounds.X, e.Bounds.Y, e.Bounds.X + e.Bounds.Width, e.Bounds.Y);
            e.Graphics.DrawLine(p1, e.Bounds.X, e.Bounds.Y + e.Bounds.Height - 1, e.Bounds.X + e.Bounds.Width, e.Bounds.Y + e.Bounds.Height - 1);
        }
    }
    

    如果用imagelist修改了行高,listView_DrawColumnHeader也要改

    private void listView_DrawColumnHeader(object sender, DrawListViewColumnHeaderEventArgs e)
    {
        Rectangle r = new Rectangle();
        r.X = e.Bounds.X + 1;
        r.Y = e.Bounds.Y;
        r.Height = e.Bounds.Height;
        r.Width = e.Bounds.Width;
        e.Graphics.FillRectangle(Brushes.WhiteSmoke, r);
        e.DrawText();
        using (Pen p1 = new Pen(Color.FromArgb(227, 227, 227), 1))
        {
            e.Graphics.DrawLine(p1, e.Bounds.X + e.Bounds.Width, e.Bounds.Y + 1, e.Bounds.X + e.Bounds.Width, e.Bounds.Y + e.Bounds.Height - 2);
            e.Graphics.DrawLine(p1, e.Bounds.X, e.Bounds.Y, e.Bounds.X + e.Bounds.Width, e.Bounds.Y);
            e.Graphics.DrawLine(p1, e.Bounds.X, e.Bounds.Y + e.Bounds.Height - 1, e.Bounds.X + e.Bounds.Width, e.Bounds.Y + e.Bounds.Height - 1);
        }
    }
    
  • 相关阅读:
    背景不动,内容滚动的解决方案(移动端)
    移动端真实1px的实现方法
    用户模板和用户场景
    构建之法阅读笔记02
    学习进度六
    NABCD
    构建之法阅读笔记01
    学习进度五
    梦断代码阅读笔记03
    地铁系统
  • 原文地址:https://www.cnblogs.com/sherlock-merlin/p/13820507.html
Copyright © 2020-2023  润新知