일부 텍스트 열과 체크 박스가있는 템플릿 열이있는 DataGrid가 있습니다. 사용자가 해당 행의 아무 곳이나 클릭하면이 체크 박스를 전환해야합니다. 가장 좋은 방법은 무엇입니까?행 마우스 클릭시 체크 박스 토글
지금은 선택한 항목 변경 및 셀 마우스 왼쪽 버튼 클릭 이벤트에 체크 표시를 전환합니다. 그러나 이것에는 2 가지 문제가 있습니다.
첫 번째 문제는 DataGrid가 데이터 바인딩 된 경우입니다. 첫 번째 행이 선택됩니다. 하지만 셀을 클릭하면 DataRowCell.MouseLeftButtonDown 이벤트가 알 수없는 이유로 발생하지 않습니다. 그래서 체크 박스는 토글되지 않습니다. 가능한 해결책은 데이터 바인딩 후 첫 번째 행을 선택 취소하는 것입니다.
두 번째 문제는 사용자가 다른 행의 확인란을 직접 클릭하면 체크 상자가 두 번 전환된다는 것입니다. 결과적으로 체크 박스가 두 번 토글되며, 이는 체크 된 값이 변경되지 않음을 의미합니다.
요구 사항을 구현하는 가장 좋은 방법은 무엇입니까?
행을 선택 취소 할 때 확인란을 선택해야하므로이 솔루션이 적합하지 않습니다. –