把一个DataTable 在DataGrid中显示。
在没有使用DataView过滤条件的情况下:能否知道 DataTable 中的某行   对应到 DataGrid中的哪一行???
有过滤的情况下呢?????(这个重要)

解决方案 »

  1.   

    to “有这种处理的必要么?”在DataGrid中,但某一个单元格发生改变时,希望即时更改同行 其他 列的内容。我用了 RowChanged 事件。可是但我直接 在 DataTalbe中更改 其值时 。反应迟钝  不能实用所以希望直接更改DataGrid中的 单元格  所以问题就出来了上面的问题????
    当然如果有更好的方法 最好????!
    多谢楼上的老兄了!!!
      

  2.   

    反应迟钝是因为事件引起了事件连锁吧。
    我是这样避免的:
    private void ColumnChanging(object sender, DataColumnChangeEventArgs e)
    {
    if(!e.Row[e.Column.ColumnName].Equals(e.ProposedValue))
    {
    this.htChaneg[e.Column.ColumnName]=true;
    }
    }
      

  3.   

    你没有用DataView,那样的情况下DataGrid绑定的就是你的DataTable的DefaultView属性;
    所以还是可以通过下面取;
    DataRowView drv = (DataRowView)this.BindingContext[this.ds,this.ds.Tables[0].TableName].Current;
    DataRow dr = drv.Row;