У меня есть ObservableCollection, связанный с DataGrid, и все работает отлично. Я хочу отфильтровать коллекцию, не переходя в базу данных, поэтому я решил использовать резервную коллекцию для хранения исходного списка, а затем публично выставить отфильтрованный список на привязку. Поэтому у меня есть следующий код:Привязка к копии ObservableCollection
_backingMemberList.Clear();
_memberList.Clear();
foreach (Member CurrentMember in ListOfMembers)
{
_memberList.Add(CurrentMember);
_backingMemberList.Add(CurrentMember);
}
_memberList = new ObservableCollection<Member>(_backingMemberList);
и связывание просто:
<DataGrid Name="dataGridMembers" ItemsSource="{Binding MemberList}" />
Теперь, по какой-то причине это ломает RowStyle
<DataGrid.RowStyle>
<Style TargetType="DataGridRow">
<Setter Property="Background">
<Setter.Value>
<SolidColorBrush Color="{Binding BindsDirectlyToSource=True, Converter={StaticResource BGColor}}"/>
</Setter.Value>
</Setter>
</Style>
</DataGrid.RowStyle>
Я не получить какую-либо информацию на панели вывода о правильном или неправильном привязке. Я не могу понять, что я делаю неправильно.
И только для того, чтобы добавить к веселью, у меня есть одна и та же связь на другой странице, и она полностью разрушает привязку. Строки даже не отображаются.
Мои вопросы:
- Что я делаю неправильно?
- В противном случае, как мне отладить привязку данных?
Так что все работает, если вы удалите свой 'RowStyle'? –
Нет, RowStyle не работает, если я использую коллекцию поддержки. RowStyle отлично работает, если я использую оригинальный ObservableCollection. Но конвертеры прекрасно работают в любом случае. –