C# Objectlistview 仅对特定行进行分组

问题描述

我正在尝试仅对列表中的特定项目进行分组,更确切地说,仅当我的模型“y”上的属性“x”已填充时,我才尝试对它们进行分组。如果属性“x”为空,则根本不应将其他项目分组。现在我有下面的代码

olv.ShowGroups = true;
OLVColumn column = new OLVColumn("HiddenGroupColumn","propertyX");
column.IsVisible = false;
column.GroupKeyGetter = delegate (object x)
{
    return ((modelY)x).propertyX;
};
olv.AlwaysGroupByColumn = column;

但它正在对所有内容进行排序,即使是具有空 propertyX 值的行。

是否可以将“仅”填充了 propertyX 的行分组并将它们保留在列表中,而不是将它们添加到列表上方或下方?

例如:

没有 姓名 PropertyX(不是实际的列,只是模型中的属性
1 someStringHere
2 一个字符串
3 洛里姆 GRP1
4 ipsum GRP1
5 asd
6 qwe
7 zxc GRP2
8 ttt GRP2
9 ee

我尽可能多地解释,在这种情况下,是否可以将第 3-4 行组合在一起并将第 7-8 行组合在一起,同时将它们保持在当前位置并且分组那些在 propertyX 上有空字符串的?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)