int rowIndex = gvCustInfo.CurrentRow.Index;
                     //如果选择的是多行 
            if (gvCustInfo.SelectedRows.Count > 1)
            {
                return;
            }
            gvCustInfo.Focus();
            //目前选择的行号 
            
            if (rowIndex != dsinfor.Rows .Count -1)
            {
                
                object[] _reccCurr = dsinfor.Rows[rowIndex].ItemArray;
                object[] _reccPer = dsinfor.Rows[rowIndex + 1].ItemArray;                int a = System.Convert.ToInt32(_reccCurr[2]);
                _reccCurr[2] = _reccPer[2];
                _reccPer[2] = a;                int id = System.Convert.ToInt32(_reccCurr[0]);
                int sortid =System.Convert.ToInt32( _reccCurr[2]);                int nid = System.Convert.ToInt32(_reccPer[0]);
                int nsortid =System.Convert.ToInt32( _reccPer[2]);                bll.UPSortID(id,sortid);
                bll.UPSortID(nid,nsortid);                gvCustInfo.DataSource = bll.GetList(" modID = " + model.modId + "").Tables[0];
                gvCustInfo.Refresh();                gvCustInfo.Rows[rowIndex + 1].Selected = true;
                gvCustInfo.CurrentCell = gvCustInfo.Rows[rowIndex + 1].Cells[1];
                //_reccCurr = dsinfor.Rows[rowIndex-1].ItemArray;
                //_reccPer = dsinfor.Rows[rowIndex + 1].ItemArray;            }            if (rowIndex + 1 == dsinfor.Rows.Count - 1)
            {
                btnDown.Enabled = false;
            }            else
            {
                btnDown.Enabled = true;
            }在页面中有一个向下向下移动的button控件,这是里面的代码.我想实现的,点击按钮的时候 在datagridview中和数据库 中同时保存.
上面的问题是dsinfor.Rows[rowIndex].ItemArray定位不准确.他指向的是没有交换前数据,我怀一可能是dagagrideview 没有刷新.
哪位大哥大姐知道帮忙看下.