已知一条DataRow dr,他是DataTable dt中的一条记录。
如何求dr在dt.DefaultView中的索引位置?

解决方案 »

  1.   

    DataRow是DataTable中的一条记录DataView是DataTable某种规则(Sort, Filter等等)看到的一个视图,也就是说,DataRow在DataView中的索引完全会按照规则变化,无法取到位置。你已经知道DataRow了,直接更改这行,然后dt.AcceptChanges(),相应的视图就会自动更改,你为什么要定位DataRow在Dataview中的索引位置呢?
      

  2.   

    因为Dataview参与前台的数据绑定,需要根据给定的dr,到前台Dataview中定位给定dr的位置。
      

  3.   

    foreach (DataGridViewRow r in this.dataGridView1.SelectedRows)
    {
        index = r.Index.ToString();//得到选 中行的索引
    } this.dataGridView1.CurrentCell   =   DataGridView.Rows[你要的行索引].Cells[0];
      

  4.   

    我有妙招也,
    先用datatable select 返回datarow[]
    取第1个
    然后dataView.findRow就可以找到dataRowView