文本在列表视图中对齐列:第一列不能居中

ben*_*nst 7 vb.net listview text-align

我有详细模式的Listview有3列.我想将标题的文本对齐设置为"居中".这适用于最后两列但不适用于第一列.如果我想将其更改为"center"并单击"center",则该字段将保持设置为"left".我可以使用属性更改此属性,还是需要对此进行编程?

谢谢.

Ant*_*ony 13

根据文件:

由于底层控件的限制,此属性对ListView控件中的第一列没有影响,该列始终与左侧对齐.若要在.NET Framework 2.0版中解决此限制,您可以处理ListView.DrawColumnHeader事件并自己绘制列标题.

另一种替代解决方法是根本不使用第一列,并通过将其宽度设置为零来隐藏它.


小智 5

我有一个简单的解决方案:添加一个新的(不需要的)第一列。将第二列(真正的第一列)的对齐方式更改为右对齐或居中对齐(现在可以在设计器中完成)。在 Form-Load-Event 中删除第一(临时)列。瞧 - textalignent 现在应该是正确的。

我在 Windows 7、8.1 和 10 下测试了此行为。它应该可以工作。

来自德国的问候