2011-02-09 2 views
0

OnPropertyChanged eventObservableCollection의 사용자 지정 데이터 컨테이너 클래스를 만들고이를 WPF의 DataGrid에 바인딩합니다. 문제는 프로그램이 시작될 때마다, DataGrid가 자동으로 하단에 새 행을 작성하는 것입니다. ObservableCollection에 새 행이 없으므로 ObservableCollection에서 프로그래밍 방식으로 새 항목을 추가하면 새 행의 데이터가 지워 지므로 편집하면 쓸모가 없습니다.WPF : 사용자 지정 클래스에 바인딩하는 Datagrid의 새 행

새 행을 사용하지 않도록 설정하거나 사용자가 SQL Server 관리 Studio 에서처럼 새 행에서 편집을 시작하면 ObservableCollection이 업데이트되도록하려면 어떻게해야합니까?

nb : WPF에서 "올바른"사용자 정의 클래스의 예제를 제공 할 수 있다면 여전히 WPF입니다. 코멘트에서

+2

사용자가 새로운 행을 추가 할 수있게하려면 'DataGrid'에서'CanUserAddRows = "False"를 설정하면됩니다. 빈 행인'NewItemPlaceHolder'가 커밋시 ObservableCollection에 삽입됩니다. –

+1

당신의 의견을 보내 주셔서 감사합니다. 나는 네가하는 말을하고 그것이 효과가있다. 불행히도 나는 대답으로 귀하의 의견을 표시 할 수 없습니다. –

+0

@Meleak 의견을 답변으로 게시 하시겠습니까? 처음에는 커뮤니티 위키라고 생각했지만 작성자로하고 커뮤니티 응답을 삭제하는 것을 선호합니다. –

답변

0

Meleak의 대답은 :

그냥 사용자가 새 행을 추가 할 수 있습니다 사용하지 않으려면

다음 DataGridCanUserAddRows="False"을 설정합니다. 빈 행인 NewItemPlaceHolder은 커밋시 ObservableCollection에 삽입됩니다.

관련 문제