关于datagridview数据上下移的问题?

sken 2009-02-11 10:59:31
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 没有刷新.
哪位大哥大姐知道帮忙看下.
...全文
82 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
sken 2009-02-11
  • 打赏
  • 举报
回复
顶起来
优途科技 2009-02-11
  • 打赏
  • 举报
回复
最好不要在datagridview里改。可以在一个table里移动,然后设置datagridview的datasouse。这样肯定可以实现。
crecrecre 2009-02-11
  • 打赏
  • 举报
回复
help
sken 2009-02-11
  • 打赏
  • 举报
回复
这么多人就没有人会吗.郁闷

110,499

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧