2011-01-06 5 views
2

Syncfusion의 GridDataBoundGrid 컨트롤을 사용하고 내 사용자 지정 목록을 바인딩하고 있습니다. 속성 중 하나는 Nullable DateTime (DateTime?)입니다. 표에 새 행을 추가하고 DateTime 열에서 편집을 시작하면 Alphanumeric을 입력하면 "XX가 Nullable '1"의 유효한 값이 아닌 것과 같은 몇 가지 사항이 표시됩니다. 1. 좀 더 의미있는 메시지를 남기려면 어떻게해야합니까?SyncFusion GridDataBoundGrid 데이터 바인딩 문제

나는 해결책을 고맙게 여길 것이다.

답변

1

오류 메시지를 표시하기 전에 CurrentCellErrorMessage 이벤트가 트리거됩니다. 이 이벤트를 처리하고 사용자 정의 MessageBox를 표시하고 이벤트를 취소 할 수 있습니다. 또한 사용자 정의 텍스트를 Text 속성으로 설정할 수 있습니다. 다음 코드는 동일한 코드를 구현 한 코드입니다.

private void Form1_Load(object sender, EventArgs e) 
{ 
this.gridDataBoundGrid.CurrentCellErrorMessage += new GridCurrentCellErrorMessageEventHandler(gridDataBoundGrid_CurrentCellErrorMessage); 
} 

void gridDataBoundGrid_CurrentCellErrorMessage(object sender, GridCurrentCellErrorMessageEventArgs e) 
{ 
//e.Text = "My Text"; 
MessageBox.Show("Type your custom message here. The original text is: \"" + e.Text+ "\""); 
e.Cancel = true; 
} 
+0

감사합니다. Arulraj. 그거야. – Ram

+0

안녕 Arulraj, 또 다른 문제가 있습니다. 내 GridDataBoundGrid에서 사용자 행을 추가하고 동적으로 편집했습니다. Onc ethey는 행과 enetr 정보를 셀에 추가하고 양식의 저장 버튼을 클릭하면 데이터가 부족한 데이터 소스에서 업데이트되지 않습니다. 데이터 소스에서 변경 사항을 업데이트하려면 다른 행을 선택해야합니다. 셀을 편집 한 후 데이터 소스를 강제로 업데이트 할 수있는 방법이 있습니까> – Ram

4

속성 편집을 완료하면 DirectSaveCellInfo 속성을 사용하여 저장합니다.

this.gridDataBoundGrid1.Binder.DirectSaveCellInfo = true;