.NET4 WinForm Listview中的多行列标题

时间:2011-11-28 19:51:43

标签: .net winforms listview

我在详情视图中有一个列表视图,我添加了列。我希望列标题的高度增加,并自动换行标题文本或允许我使用CrLf指定换行符。

这是否可以使用标准的.NET控件?

2 个答案:

答案 0 :(得分:3)

这很难,你无法直接控制列标题高度。你可以通过给ListView一个大字体间接地做到这一点。然后,您需要将OwnerDraw属性设置为true并实现DrawItem,DrawSubItem和DrawColumnHeader事件。后者允许您自动换行文本。您还需要为添加的每个ListViewItem设置Font属性,这样它们也不会被绘制得很大。不愉快但不是不可能。

答案 1 :(得分:-1)

Better ListView control就是这样做的,它是用纯托管(.NET)代码编写的。

列标题和项目(甚至组标题)都可以包含任意多行文本,即使使用自定义换行符也是如此。最大行数可以由属性限制:

enter image description here

enter image description here