Я пытаюсь связать DataGrid с ViewModel. Видимость DataGrid,
Привязки ItemSource и столбцов работают, но если я пытаюсь связать значения как RowDetailsVisibilityMode или текст заголовка столбца, привязка не работает.
Я пытался посмотреть, правильно ли переменные связаны с помощью отладки, и указывает ли я на XAML во время отладки, а информация правильно связана.
Что я должен сделать, чтобы связать эту DataGrid?
A:
<DataGrid Grid.Row="1" Grid.Column="0" ItemsSource="{Binding GridItemSource}" SelectedItem="{Binding SelectedGridItem}" RowDetailsVisibilityMode="{Binding RowDetailsVisibility}">
<DataGrid.Columns>
<DataGridTextColumn Header="HeaderA" Binding="{Binding ParameterA}" Width="30*"/>
<DataGridTextColumn Header="HeaderB" Binding="{Binding ParameterB}" Width="30*"/>
<DataGridTextColumn Header="HeaderC" Binding="{Binding ParameterC}" Width="30*"/>
</DataGrid.Columns>
</DataGrid>
B
<DataGrid.Columns>
<DataGridTextColumn Header="{Binding ColumnNameA}" Binding="{Binding ParameterA}" Width="30*"/>
<DataGridTextColumn Header="{Binding ColumnNameB}" Binding="{Binding ParameterB}" Width="30*"/>
<DataGridTextColumn Header="{Binding ColumnNameC}" Binding="{Binding ParameterC}" Width="30*"/>
</DataGrid.Columns>
Я бы хотел перейти из ситуации А в ситуацию Б
Edit:
Я попробовал этот подход
<DataGridTextColumn.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding Path=HeaderName, Mode=OneWayToSource, UpdateSourceTrigger=PropertyChanged}"/>
</DataTemplate>
</DataGridTextColumn.HeaderTemplate>
И строка не отображается
Ситуация сейчас такова, что если я напишу
<TextBlock Text="Header name"/>
Я вижу текст, если я его связываю, я вижу пробел.
Поскольку мне также нужно связать видимость деталей строки, я попытался связать свойство RowDetailsVisibilityMode с помощью bool (используя конвектор), и эта привязка тоже не работает.