我有一个C# ListView,我想根据列的内容自动调整列宽。
我知道将列宽设置为-1会将列的大小设置为最宽成员的长度。我知道将列宽设置为-2将使列的大小与列标题的长度相同。如何调整列的大小,使其成为两者中较大的一列?
我可以这样做:
for (int i = 0; i < listView.Columns.Count; ++i)
{
listView.Columns[i].Width = -1;
int width1 = listView.Columns[i].Width;
listView.Columns[i].Width = -2;
if (width1 > listView.Columns[i].Width)
listView.Columns[i].Width = -1;
}但它看起来确实非常低效。
有谁有答案吗?
发布于 2013-06-14 21:44:28
你应该试试
ListView.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);即使它显示为"ColumnHeaderAutoResizeStyle.HeaderSize“,它也应该自动调整到列中最大的项,无论它是标题还是列成员
https://stackoverflow.com/questions/17109505
复制相似问题