想知道是否有人可以帮助解决Windows Forms / .net ListView问题(在这种情况下使用C#...)
我们将ListViewItems添加到ListView。根据设计,其中一些不属于任何群体。在运行时,它们出现在一个名为“Default”的组中,该组不是在我们的代码中创建的.Net就是这样做的。
(请注意,当列表视图中只有非组项目时,不显示此“默认”标题。但是,只要添加包含项目的组,就会显示此项。
无论如何,(惊人的)问题是似乎没有办法本地化或重命名该组。如果有人能,我会很高兴的 (a)另行通知我,即如何重命名,或 (b)如何根本不显示“默认”标题 ?
(注意:我确实认识到我们可以重写以确保所有项目都在组中,让我们完全控制所有组名。但是控件中内置了很多逻辑,我宁愿避免任何重构此外,我很想知道这对微软来说是否是有趣的疏忽,或者它是否可以改变而且我只是太愚蠢而无法找到方法)。 谢谢 Karagee
答案 0 :(得分:3)
这是文档说的
未分配给组的任何项目都将显示在默认组中,该组具有标题“DefaultGroup {0}”标题。 默认组不包含在“群组”集合中,无法更改。它主要用于调试,以确保所有项目都已正确添加到组中。
所以,我认为这是不可能的。
答案 1 :(得分:2)
您无法更改默认标题。
但您可以添加新组(属性组),并将所有商品分配到此组(属性项目/组)。
答案 2 :(得分:2)
将ShowGroups属性设置为" false"这应该可以解决问题。
//代码行 lstView.ShowGroups = false;
对于列表视图,默认情况下此属性设置为true,除非指定任何ListViewItem进入此默认组。通过将此设置为false,您将删除列表视图中的组。
答案 3 :(得分:0)
您可以使用反射来重命名默认组的标题文本。有一个名为defaultView of ListView的私有ListViewGroup字段,您可以使用反射来操作此字段并执行任何您想要的重命名标题文本。
答案 4 :(得分:0)
我相信这是从一个空的(默认)组中出现的。转到组并删除第一个条目。