2012-08-31 3 views
0

MyDto의 인스턴스를 반환하는 ObjectDataSource에 대한 GridView가 바인딩되어 있습니다. MyDto에서 계산 된 값을 읽기 전용 속성으로 표시하려는 열을 제외하고 모두 편집 중 문제가 발생한다는 것을 제외하면 모두 작동합니다. 편집 모드는 인라인입니다.DevExpress GridView 계산 된 열 (ObjectDataSource 포함)

EditFormSettings에서 해당 열을 readonly property = True 및 Visible = False로 설정했지만 새 행을 삽입하고 Update를 누르면 ObjectDataSource가 예외를 throw합니다. "DataObjectTypeName 속성에 지정된 유형의 'CalculatedValue'속성을 ObjectDataSource 'MyDataSource'는 읽기 전용이며 해당 값을 설정할 수 없습니다. "

왜 GridView가 읽기 전용 값을 업데이트하려고하는지 이해할 수 없습니다. 감사합니다.

답변

0

GridView가 자동으로 모든 바운드 열을 업데이트하려고 시도하기 때문에 읽기 전용으로 또는 읽기 전용으로 읽기 문제가 발생합니다.

계산 된 열에 대해 EditItemTemplate을 편집하여 빈 템플릿을 삽입했습니다. 이 방법으로 편집 모드에서는 아무 것도 볼 수 없으며 GridView는 readonly 속성을 업데이트하지 않고 디스플레이 된 모드에서 (자동으로 생성 된) 바인딩 된 템플릿 (계산 된 값 포함)을 봅니다.

관련 문제