至少这样是可以的:加两个 成员用于保存dataGrid中的单元格位置。
假如:
private Point pPoint = new Point(-1,-1);
private Point cPoint = new Point(-1,-1);然后在dataGrid的 CurrentCellChanged 事件中加
pPoint = cPoint;
cPoint = new Point(grdCustomers.CurrentCell.RowNumber,grdCustomers.CurrentCell.ColumnNumber);
通过下面就可以取到你需要的值了:
if(pPoint.X>-1)  MessageBox.Show(grdCustomers[pPoint.X,pPoint.Y].ToString());

解决方案 »

  1.   

    在datagrid的MouseDown事件中添加
    MessageBox.Show(this.dataGrid1[this.dataGrid1.CurrentCell.RowNumber,this.dataGrid1.CurrentCell.ColumnNumber].ToString());
    看看是什么值?
      

  2.   

    你可以写datagrid的单击事件,当鼠标单击某个单元格的时候,你就用一个变量记录这个值和这个单元格的坐标(如果有必要就记录坐标),然后再去执行CurrentCellChanged来对单元格进行修改。
      

  3.   

    你可以在鼠标单击时间中记录this.dataGrid1[this.dataGrid1.CurrentCell.RowNumber,this.dataGrid1.CurrentCell.ColumnNumber].ToString()
    的值呀
    或者记录某个列的值
    this.dataGrid1[this.dataGrid1.CurrentCell.RowNumber,1].ToString()
      

  4.   

    private void ColumnChangingHandler( object sender, DataColumnChangeEventArgs e )
    {
    e.ProposedValue<-----这个值
                       }