본문 바로가기

프로그래밍/C#

c# datagridview에 keypress이벤트 핸들러 달기




C#의 Datagridview 이벤트중에 보면 EditingControlShowing이라는 이벤트가 있는데 그 이벤트핸들러를 선택해주고
다음과 같이 구현
private void ProductMargins_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
{
       e.Control.KeyPress += new KeyPressEventHandler(Control_KeyPress);
}
//datagridview에 이벤트를 잡아줘야함


private void Control_KeyPress(object sender, KeyPressEventArgs e)
{
       if ((e.KeyChar >= '0' && e.KeyChar <= '9') || (e.KeyChar == '.' || e.KeyChar == ',' || e.KeyChar == '\b'))
       {
           // Don't do anything, everything is good.
       }
       else
       {
           e.Handled = true;
       }
 }