在我的应用程序中,有一个ListView,其中包含产品保留的所有位置的位置名称和拣配优先级(最先选择最低)。除此之外,我还创建临时列表' s仅包含存储单个产品的位置。例如: -
LISTVIEW List<String>
-------- ------------
__________________________ __________________________
|Location |Picking Priority| | Location |
|---------|----------------| |--------------------------|
| A | 100 | | A |
| B | 50 | | C |
| C | 500 | | D |
| D | 150 | |__________________________|
|_________|________________|
我想要发生的是根据ListView中该位置的拣配优先级排序的列表,从最低到最高。
实际上,这意味着上面的列表现在看起来像这样: -
__________________________
| Location |
|--------------------------|
| A |
| D |
| C |
|__________________________|
这怎么可能呢?
答案 0 :(得分:2)
您可以根据列表项订购商品,它很难看,速度慢(比使用具有这两种属性的类慢)但它可以正常工作。
我假设ListViewItem.Text包含位置的名称和ListViewItem.Subitems [1] .Text是具有优先级的列(整数格式):
var items = theListView.Items.Cast<ListViewItem>();
var sortedList = theStringList.OrderBy(d => items.Where(i => i.Text == d).Select(i => int.Parse(i.Subitems[1].Text)).First()).ToList();