zoukankan      html  css  js  c++  java
  • c# listView中列宽随列中的内容自动调整

    1、创建一个类 ListViewAutoChange  作用:自动调整ListView的列宽

    代码如下:(内容很容易理解,没加注释)

    using System;
    using System.Collections.Generic;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
     
    namespace XmlResolve
    {
        class ListViewChange
        {
            //自动调整ListView的列宽的方法
            public void AutoResizeColumnWidth(ListView lv)
            {
                int count = lv.Columns.Count;
                int MaxWidth = 0;
                Graphics graphics = lv.CreateGraphics();
                int width;
                lv.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);
                for (int i = 0; i < count; i++)
                {
                    string str = lv.Columns[i].Text;
                    MaxWidth = lv.Columns[i].Width;
     
                    foreach (ListViewItem item in lv.Items)
                    {
                        str = item.SubItems[i].Text;
                        width = (int)graphics.MeasureString(str, lv.Font).Width;
                        if (width > MaxWidth)
                        {
                            MaxWidth = width;
                        }
                    }
                    if (MaxWidth <= 150)
                    {
                        lv.Columns[i].Width = MaxWidth;
                    }
                    else
                    {
                        lv.Columns[i].Width = 150;
                    }
                }
            }
        }
    }

    2、主窗体中调用即可实现
  • 相关阅读:
    图片延迟加载方法
    mongodb常用命令
    未知尺寸元素水平垂直居中:
    nodejs学习之加密
    nodejs学习之events的使用
    nodejs学习之events
    学习Nodejs之mysql
    PHP之几道面试题
    Jquery学习插件之手风琴
    我的第一篇博客
  • 原文地址:https://www.cnblogs.com/wxfsoft/p/3434242.html
Copyright © 2011-2022 走看看