/*--------------行上移------------------*/
1 private void 上移ToolStripMenuItem_Click(object sender, EventArgs e)
2 {
3 DataGridView curgrd = null;
4 curgrd = dgvSub;
5
6 if (curgrd.CurrentRow == null)
7 return;
8
9 curgrd.EndEdit();
10
11 int selectedRowIndex = curgrd.CurrentRow.Index;
12 if (selectedRowIndex >= 1)
13 {
14 // 拷贝选中的行
15 DataGridViewRow newRow = curgrd.Rows[selectedRowIndex];
16
17 // 删除选中的行
18 curgrd.Rows.Remove(curgrd.Rows[selectedRowIndex]);
19
20 // 将拷贝的行,插入到选中的上一行位置
21 curgrd.Rows.Insert(selectedRowIndex - 1, newRow);
22
23 // 选中最初选中的行
24 curgrd.CurrentCell = curgrd.Rows[selectedRowIndex - 1].Cells[0];//设定当前行
25 }
26 }
/*--------------行下移------------------*/
1 private void 下移ToolStripMenuItem_Click(object sender, EventArgs e)
2 {
3 DataGridView curgrd = null;
4 curgrd = dgvSub;
5
6 if (curgrd.CurrentRow == null)
7 return;
8
9 curgrd.EndEdit();
10
11 int selectedRowIndex = curgrd.CurrentRow.Index;
12 if (selectedRowIndex < curgrd.Rows.Count - 1)
13 {
14 // 拷贝选中的行
15 DataGridViewRow newRow = curgrd.Rows[selectedRowIndex];
16
17 // 删除选中的行
18 curgrd.Rows.Remove(curgrd.Rows[selectedRowIndex]);
19
20 // 将拷贝的行,插入到选中的下一行位置
21 curgrd.Rows.Insert(selectedRowIndex + 1, newRow);
22
23 // 选中最初选中的行
24 curgrd.CurrentCell = curgrd.Rows[selectedRowIndex + 1].Cells[0];//设定当前行
25 }
26 }