개발/C#

[팁] C# 데이터그리드뷰 엔터키 입력시 다음행 이동 금지

FA1976 2018. 1. 25. 09:46

Key_Down 이벤트에 아래와 같이 코드를 추가해주면 엔터키를 쳤을 때 다음 행으로 이동이 안된다.

구글에서 c# datagridview cell enter event 로 검색하면 관련 게시글들이 나온다.


private void dataGridView1_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyData == Keys.Enter)
    {
        int column = dataGridView1.CurrentCell.ColumnIndex;
        int row = dataGridView1.CurrentCell.RowIndex;
        dataGridView1.CurrentCell = dataGridView1[column, row];
        e.Handled = true;  <---- 반드시 해줘야함 안그럼 작동을 안함. 이거때문에 얼마나 고생을 ㅠ.
    }
}


엔터키를 치면 행으로 이동하지 않고 칼럼으로 이동하고 마지막 칼럼에서는 다음행의 첫번째 칼럼으로 이동하게 하는 코드

private void dataGridView1_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyData == Keys.Enter)
    {
        e.SuppressKeyPress = true;
        int column = dataGridView1.CurrentCell.ColumnIndex;
        int row = dataGridView1.CurrentCell.RowIndex;
        if (column == dataGridView1.Columns.Count -1)
        {
            dataGridView1.CurrentCell = dataGridView1[0, row + 1];
        }
        else
        {
            dataGridView1.CurrentCell = dataGridView1[column + 1, row];
        }
    }
}



출처: http://link2me.tistory.com/962 [소소한 일상 및 업무TIP 다루기]

'개발 > C#' 카테고리의 다른 글

[팁] C# 폼로드시 화면꽉차게 하기  (0) 2018.01.25
[팁] C# 이미지 크기 조절  (0) 2018.01.25
[팁] C# 윈폼 꾸미기  (0) 2018.01.25
[팁] C# 하위폼에서 상위폼으로 데이터 전달  (1) 2018.01.25
c# 주소변환 \u003d \u002d  (0) 2018.01.19
Listview Checkbox 에 checked된 목록 가져오기  (0) 2018.01.17
C# Intel hex to bin Code  (0) 2018.01.02
C# CRC32  (0) 2017.12.27