根据用户多选对列表框中的项目进行分组

时间:2018-12-19 08:33:19

标签: c# wpf listbox

我正在寻找有关如何最好地实现以下目标的想法。我有一个简单的ObservableCollection列表框。我允许用户选择多个项目。我想让他们“分组”他们的选择。例如。他们选择3个项目,然后单击“组”,这3个项目彼此关联。 此列表框表示数据表中的列。当他们对项目进行分组时,他们说他们希望将这些列连接成一个返回。基于此,只要他们最终点击“提交”,我就不会在乎如何完成此操作,我可以浏览列表并查看他们想将哪些项粘在一起。 所以,我想我在技术上不是“分组”,而是“标记”。我知道在解释带标签的项目方面还有其他挑战,但我会在以后进行处理。

干杯!

2 个答案:

答案 0 :(得分:1)

添加另一个包含三列的表。标记(或别名),ColumnName和顺序。然后编写一些中间处理代码。

取决于数据的动态程度,这可能会返回一个expando,一个动态生成的类型或您使用生成的代码定义的类型(发出)。它从列中获取数据,按指定的顺序追加数据,基于columname设置属性并返回新对象。除非您也将其发出,否则这可能效率很低。

答案 1 :(得分:0)

我想得太多了。当用户单击“组合”时,我最终只是选择了列表中选择的内容,然后将它们分配到了自己的组列表中。它们都具有通用的GUID,并存储在数据库中。