学习C#的时候碰上下面的代码,不知道什么意思,请各位指点指点。protected BindingManagerBase bmData;public override void SaveForUpdata()
{
    int row  = DataGrid.CurrentCell.RowNumber;
    DataGrid.CurrentCell = new DataGridCell((row + 1)% bmData.Count,0);
    if(dataSet.HasChanges)
      sqlDataAdapter.Updata(dataSet);
}最好是能详细解释一下
DataGrid.CurrentCell = new DataGridCell((row + 1)% bmData.Count,0);
是什么意思!

解决方案 »

  1.   

    我不明白bmData.Count这个属性取的什么值,new DataGridCell((row + 1)% bmData.Count,0)不是返回DataGridCell的第(row + 1)% bmData.Count+1行,第一列的值吗?lz大概是被%弄糊涂了哈,我第一眼看也差点没反应过来。或许我说的不对,我也是初学者。
      

  2.   

    (row + 1)% bmData.Count  //计算行号
     DataGridCell((row + 1)% bmData.Count,0);//第(row + 1)% bmData.Count行,第1列
      

  3.   

    我看来看去总感觉要实现 SaveForUpdata 功能有下面两句就行了啊。
    int row  = DataGrid.CurrentCell.RowNumber;
    DataGrid.CurrentCell = new DataGridCell((row + 1)% bmData.Count,0);
    这两句似乎删掉也没什么问题啊。为什么要写这两句呢,这两句在这里到底起着什么作用呢?
      

  4.   

    //获得当前鼠标所在行
    int row  = DataGrid.CurrentCell.RowNumber;
    //设置更新后光标所在的单元格
    DataGrid.CurrentCell = new DataGridCell((row + 1)% bmData.Count,0);
    //下面2句更新数据库数据
     if(dataSet.HasChanges)
          sqlDataAdapter.Updata(dataSet);
      

  5.   

    xyz822(solo) 同意楼上的观点!