2011-09-25 4 views
1

Silverlight MVVM 응용 프로그램에 DataGrid 행 인덱스를 추가하여 행 개체를 가져 와서 인덱스를 반환하는 IValueConverter를 만들었습니다. 변환기 자체가 제대로 작동하고 여기에 간단한 XAML 행이 있습니다.Silverlight datagrid 전체 열 다시 바인딩

<sdk:DataGridTextColumn Binding="{Binding Converter={StaticResource RowIndexConverter}}" /> 

문제점은 새로운 행을 추가 할 때 맨 위에 삽입해야 할 때입니다. 이렇게하면 인덱스 0에 새 행이 만들어지고 다른 행은 모두 내리고 행 번호는 업데이트되지 않습니다. 전체 열을 다시 바인딩 할 수있는 방법이 있습니까?

답변

2

이 문제를 해결하려면 DataGrid에 바인딩하는 모델에 RowIndex를 추가해야합니다. 행을 추가/제거 할 때마다 각 모델 항목의 색인을 업데이트하면 DataGrid가 업데이트됩니다.

1

DataGrid.itemssource를 분리했다가 다시 부착하십시오.