我有一个list(of DataRow)
(每个包含的行来自同一个表)。
每行包含.item("number")
作为String
。
此项目代表Number
。
我需要的是一个快速功能,orders the rows
.item("number")
列表中的Ascending
(1-> 2-> 3-> 4-> 5 )
编辑以下是我对在这个问题下询问我的问题的回答! (哇,这就是很多问题..)
grpname | grpID | LocationID | info1 | info 2 | Info 3
yaya | 2 | 4 | asd | asd | dasd
yaya | 2 | 2 | asd | asd | dasd
yaya | 2 | 3 | asd | asd | dasd
yaya | 2 | 1 | asd | asd | dasd
yaya | 2 | 5 | asd | asd | dasd
yo | 6 | 4 | asd | asd | dasd
yo | 6 | 1 | asd | asd | dasd
yo | 6 | DBNULL | asd | asd | dasd
yo | 6 | 2 | asd | asd | dasd
yo | 6 | 6 | asd | asd | dasd
基本上就是我所拥有的。
我通过阅读第三方应用程序的数据库获得上述信息。我的任务是按照用户在提到的第三方工具中设置的顺序将它们放入一个漂亮的单词表中。
LocationID
属于grpID
,因此在保持同一Datatable
时,组内的行具有特定顺序。
我能够在正确的组中订购DataRows
。要解决将行放入组中正确位置的问题,我会以编程方式将组中的所有行放入list(of Datarow)
中,并将List(of List(of DataRow))
放入Lists
一旦我订购了所有行正确地在DataTable
内我将在 Try to put CInt(LocationID) -> if Catch happens (DBNULL): Put 999
After thats done: Use DataView to Order DataTable by grpID, newColumn
修改 我终于找到了一个解决方案,我自己使用了一个带有以下内容的附加列(描述为文本)
Ext.define('MyApp.view.colorSelect', {
extend: 'Ext.Container',
xtype: 'colorselect',
colorStore: '',
initialize: function() {
this.callParent(arguments);
this.colorSelectField = Ext.create('Ext.field.Select', {
label: 'Color',
options: [],
listeners: {
initialize: function() {
scope:this,
this.fireEvent('colorSelectFieldInit', this);
}
}
});
this.add([this.colorSelect, otherItem1, otherItem2]);
Ext.Viewport.fireEvent('colorSelectInitAction', this);
}
});
主要通过grp命令进行排序,当同一组中有多行时,它按newColumn排序。
答案 0 :(得分:0)
我想知道为什么当你可以在List(Of T)
中轻松操纵它们时,它们为DataTable
。给定名为rowList
的列表:
rowList = rowList.OrderBy(Function(q) q.Item("number")).ToList