개발 노트

datagridview pageup pagedown 10칸씩 움직이기 본문

프로그래밍/C#

datagridview pageup pagedown 10칸씩 움직이기

알 수 없는 사용자 2022. 4. 18. 14:15

pageup

	DataGridView dgv = dataGridView1;
			try
			{
				int totalRows = dgv.Rows.Count;
				// get index of the row for the selected cell
				int rowNumber = 0;
				int rowIndex = dgv.SelectedCells[rowNumber].OwningRow.Index;
				if (rowIndex == 0)
					return;
				// get index of the column for the selected cell
				int colIndex = dgv.SelectedCells[0].OwningColumn.Index;
				DataGridViewRow selectedRow = dgv.Rows[rowIndex];
				dgv.ClearSelection();
				if (rowIndex - 10 <0)
				{
				dgv.Rows[0].Cells[colIndex].Selected = true;
				}
				else	dgv.Rows[rowIndex - 10].Cells[colIndex].Selected = true;
			}
			catch { }

pagedown

DataGridView dgv = dataGridView1;
			try
			{
				int totalRows = dgv.Rows.Count;
				// get index of the row for the selected cell
				int rowIndex = dgv.SelectedCells[0].OwningRow.Index;
				if (rowIndex == totalRows - 1)
					return;
				// get index of the column for the selected cell
				int colIndex = dgv.SelectedCells[0].OwningColumn.Index;
				DataGridViewRow selectedRow = dgv.Rows[rowIndex];
				dgv.Rows.Remove(selectedRow);
				dgv.Rows.Insert(rowIndex + 1, selectedRow);
				dgv.ClearSelection();
				if (dgv.Rows[dataGridView1.Rows.Count - 1].Cells[colIndex].Value == null)
				{
					dgv.Rows[dataGridView1.Rows.Count-1].Cells[colIndex].Selected = true;
				}
				else dgv.Rows[rowIndex + 10].Cells[colIndex].Selected = true;
			}
			catch { }

'프로그래밍 > C#' 카테고리의 다른 글

바이너리파일 공부하기  (0) 2022.04.22
베어테일분석하기  (0) 2022.04.21
json serialize desiralize  (0) 2022.04.18
DYNAMIC  (0) 2022.04.18
데이터그리드뷰바인딩  (0) 2022.04.14