Hi, Simon,
Excellent question...you can create multiple views of the same datatable, by doing something like the following:
DataView dv1 = new DataView(MyDataSet.Tables["MyTableName"]);
dv1.Sort = " column1 ";
dv1.RowFilter = " column2 > 100 ";
DataView dv2 = new DataView(MyDataSet.Tables["MyTableName"]);
dv2.Sort = " column4 ";
dv2.RowFilter = " column6 > 50 ";
Keep in mind that there is no 'record pointer' in ADO.NET - though there is the binding manager position if you've bound a control (like a grid) to a particular dataview.
Let me know if that helps, or if you need more...
Kevin