Я использую сетку данных WPF для привязки к объекту (т.е. не к базе данных).У меня горизонтальное выравнивание на Stretch.В настоящее время он у меня внутри Границы, которая находится внутри Сетки.
Однако, когда я запускаю приложение, в DataGrid появляется пустой столбец и сетка, показывающая.То есть у меня есть 5 столбцов и 5 строк, а затем отображается пустой 6-й столбец и строка.См. Изображение:
Вопрос - Как избавиться от этих пустых строк?Обратите внимание, что содержимое DataGrid заполняется программно (то есть не является статичным).
спасибо
РЕДАКТИРОВАТЬ: я исправил дополнительную строку (через CanUserAddRows), но у меня все еще есть проблема сдополнительный столбец справа.
Проблема с дополнительным столбцом справа связана с автоматической настройкой ширины столбца.DataGrid на самом деле настроен (см. XAML ниже) так, что справа расположен GridSplitter.Когда я перемещаю GridSplitter, я отмечаю, что столбцы DataGrid не меняются автоматически.Таким образом, в целом проблема заключается в том, что (а) при запуске виден частично дополнительный столбец, и (б) после перемещения GridSplitter они тоже не меняют размер.
Есть идеи, как заставить это работать?
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="0">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Label Content="Summary" Grid.Row="0" HorizontalAlignment="Center" />
<Grid Grid.Row="1">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<RadioButton IsChecked="{Binding Path=Period, Converter={StaticResource enumBooleanConverter}, ConverterParameter=AllTime}" Grid.Column="0">All Time</RadioButton>
<RadioButton IsChecked="{Binding Path=Period, Converter={StaticResource enumBooleanConverter}, ConverterParameter=Month}" Grid.Column="1">Month</RadioButton>
<RadioButton IsChecked="{Binding Path=Period, Converter={StaticResource enumBooleanConverter}, ConverterParameter=Week}" Grid.Column="2">Week</RadioButton>
<RadioButton IsChecked="{Binding Path=Period, Converter={StaticResource enumBooleanConverter}, ConverterParameter=Day}" Grid.Column="3">Day</RadioButton>
</Grid>
<Border Grid.Row="2">
<DataGrid Name="SummaryDataGrid" HorizontalGridLinesBrush="#FF726868" VerticalGridLinesBrush="#FF726868" AlternatingRowBackground="#FFD0F896" CanUserReorderColumns="False" CanUserResizeRows="False" CanUserAddRows="False" CanUserSortColumns="True" CanUserResizeColumns="False" ColumnWidth="Auto" />
</Border>
</Grid>
<GridSplitter HorizontalAlignment="Right"
VerticalAlignment="Stretch" Grid.Column="1" ResizeBehavior="PreviousAndNext"
Width="5" Background="#FFBCBCBC"/>
<Grid Grid.Column="2" Name="RTChartGrid">
<-- CUT -->
</Grid>
</Grid>