WinForms윈폼 C1TrueDBGrid 편집모드 진입
페이지 정보
작성자 병아리고기 작성일 2020-09-25 13:52 조회 4,277회 댓글 2건본문
관련링크
이전에 문의 드렸던
F2, 한영변환키를 눌렀을때 내용이 지워지며 편집모드로 진입하는것을 막을 방법을 문의 드렸었습니다.
if (e.KeyCode == Keys.F2)
{
e.SuppressKeyPress = true;
}
if (e.KeyCode == Keys.ProcessKey)
{
e.SuppressKeyPress = true;
}
답변주신 내용으로 원만히 해결되는 듯 하였으나,
저희 회사의 프로그램을 사용하는 고객분중 F2키를 눌러 편집모드로 진입하는 기능을 사용하시는 분들이 다수 존재하였습니다.(마우스를 사용하지 않는 분인것 같습니다.) 그로 인해 해당 방식을 통해서는 완벽한 해결이 불가능하였습니다.
F2키를 이용해 편집모드에 진입할 수 있되 편집모드에 진입할때 내용이 지워지지 않아야합니다. 위의 방법으로는 F2키 자체를 막거나, 편집모드를 진입할 수 있으나 내용이 지워지거나 둘중 하나를 선택할 수 밖에 없었습니다.
제가 C1TrueDBGrid에서 원하는 동작을 요약하자면 아래와 같습니다.
F2키를 눌렀을때 -> 편집모드에 진입하면서, Cell의 내용 유지
한영변환키를 눌렀을때 -> 편집모드에 진입하지 않으면서, 한영변환
F2키를 이용한 편집모드 진입은 C1의 기능인 것으로 알고 있고, 한영변환키(ProcessKey)로 인한 편집모드 진입은 없었던 기능으로 알고 있습니다.(제가 잘못알고 있는것일수도 있지만..)
최신버젼 FlexGrid에서는 편집모드와 관련된 기능이 정상적으로 동작하는것으로 보입니다. FlexGrid로 사용중인 모든 컨트롤을 바꾸면 모든 문제를 피해갈 수 있겠지만, 10년 넘게 TrueDBGrid를 사용해 만든 프로젝트가 너무나도 많고, 클래스 라이브러리, 프로젝트 참조 등 서로 엮여있어 일부분만 FlexGrid로 변환하기 무리가 있는 상황입니다.
C1버젼이 [2.1.20073.74]에서 [4.5.20201.416]버젼으로 바뀌는 어느 과정중에 C1TrueDBGrid의 에디트모드 활성화와 관련된 내부로직이 변경되지 않았나 생각됩니다.(더블 클릭을 이용한 편집모드 진입은 다른 방식으로 이루어지는건가요...? 똑같이 편집모드로 진입하지만 내용이 지워지는 현상이 일어나지 않습니다.)
C1TrueDBGrid1.EditActive = true;
같은 내용으로 계속 문의드려 죄송하지만 한번만 더 확인 해주셨으면 합니다.