ListView ColumnHeader.Name是空字符串

Nei*_*ell 9 c# listview

我已经创建了一个ListView包含四列的WinForms as Detail视图.我在设计器中为每个列命名,但是当ColumnHeader通过ListView.Columns属性访问每个列时,我发现每个列ColumnHeader.Name都是一个空字符串.我做错了什么或这是一个框架错误?

ste*_*nar 8

我能够重现相同的行为.我认为它肯定是一个错误,因为它暗示设计师将正确设置该值.

作为解决方法,您也可以将名称放入Tag属性中.(或者在构造函数中以编程方式设置它,但是如果你稍后需要在设计器中添加一个列,这将无法正常工作.我宁愿不使用设计器来初始化列.)

我在这里找到了一些讨论- 看起来这是一个已知的问题,他们也在使用Tag hack.

  • “FixColumnNames”函数hack 工作正常。令人惊讶的是(?)它在.NET 4.0 中没有修复。 (2认同)