在同一行吗?
那么用CurrentRowIndex来获得行,然后转向ID那一列即可。

解决方案 »

  1.   

    可以先获得datagrid当前行的关键字的值,然后到原始数据表中找到关键字所在的纪录
      

  2.   

    foreach (DataGridItem rowItem in dataGrid.Items)
    {
    if(...)
       return rowItem.ItemIndex;
    }
      

  3.   

    可以先用bindingcontext绑定,然后单击datagrid就可以返回当前记录的datarowview对象bindingmanagerbase bmb=this.bindingcontext[dataset,"tablename"];
    DataRowView a=(DataRowView)bmb.Current;
    MessageBox.Show(a[0].ToString());