Windows窗体 - ListView - 删除列之间的行

时间:2010-05-10 08:21:02

标签: c# .net winforms listview user-interface

我需要在WinForms中显示一个ListView,它不应该在列之间有任何行。我尝试GridLines=false并尝试将HeaderStyle设置为ColumnHeaderStyle.None。但这不起作用。我想删除中间的两条垂直线。

screenshot http://www.freeimagehosting.net/uploads/4bcee1f639.png

2 个答案:

答案 0 :(得分:1)

GridLine = False应该有效。 (参见Pramodh的答案。)如果没有,你还有别的错误。如果在代码中设置此属性,请确保已创建控件的句柄。方法CreateControlIsHandleCreated很有帮助。

C#中影响控件的一个常见问题是访问窗体构造函数中的控件属性。通常,控件句柄在“可见”之前不会创建,这在表单加载之前不会发生。因此,如果在表单构造函数中设置这些属性,请将代码移动到Microsoft推荐的Load事件。

Control.CreateControl方法

  

CreateControl方法强制执行   要为控件创建的句柄   和它的孩子控制。这个方法是   当你需要一个手柄时使用   立即进行操纵   控制或其子女;只是   调用控件的构造函数   不要创建句柄。

     

CreateControl不会创建   如果控件的控制句柄   可见财产是假的。您可以   要么调用CreateHandle方法,要么   访问Handle属性来创建   控件的手柄无论如何   控制的可见性,但在此   case,没有创建窗口句柄   对于控制的孩子们。

答案 1 :(得分:0)

只需将视图更改为详细信息

和GridLines = false

喜欢:

        this.listView1.View = System.Windows.Forms.View.Details;
        this.listView1.GridLines = false;