Skip to content
This repository was archived by the owner on May 10, 2025. It is now read-only.

Commit 9363ec1

Browse files
committed
add move up/down function
1 parent 13e57f2 commit 9363ec1

2 files changed

Lines changed: 65 additions & 0 deletions

File tree

Form1.Designer.cs

Lines changed: 26 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Form1.cs

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -299,5 +299,44 @@ private void label1_Click(object sender, EventArgs e)
299299
{
300300

301301
}
302+
303+
private void button7_Click(object sender, EventArgs e)
304+
{
305+
MoveSelectedRow(-1); //Moveup
306+
}
307+
308+
private void MoveSelectedRow(int direction)
309+
{
310+
// Exit if no cell is selected or multiple cells are selected
311+
if (dataGridView1.SelectedCells.Count != 1)
312+
{
313+
MessageBox.Show("Please select a single cell to move its row.");
314+
return;
315+
}
316+
317+
// Get the selected cell
318+
DataGridViewCell selectedCell = dataGridView1.SelectedCells[0];
319+
int rowIndex = selectedCell.RowIndex;
320+
int newRowIndex = rowIndex + direction;
321+
322+
// Exit if the new row index is out of bounds
323+
if (newRowIndex < 0 || newRowIndex >= dataGridView1.Rows.Count)
324+
{
325+
return;
326+
}
327+
328+
// Swap the rows
329+
DataGridViewRow selectedRow = dataGridView1.Rows[rowIndex];
330+
dataGridView1.Rows.Remove(selectedRow);
331+
dataGridView1.Rows.Insert(newRowIndex, selectedRow);
332+
333+
// Reselect the moved cell
334+
dataGridView1.ClearSelection();
335+
dataGridView1.Rows[newRowIndex].Cells[selectedCell.ColumnIndex].Selected = true;
336+
}
337+
private void button8_Click(object sender, EventArgs e)
338+
{
339+
MoveSelectedRow(1); //Move down
340+
}
302341
}
303342
}

0 commit comments

Comments
 (0)