Я использую сетку данных WPF для привязки к объекту (т. Е. Не к базе данных). У меня горизонтальное выравнивание на Stretch. В настоящее время у меня это в пределах границы, которая находится внутри сетки.WPF Data Grid - Как скрыть следующий столбец/строку, которая видна?
Однако при запуске приложения DataGrid имеет пустой столбец и сетку. Это означает, что у меня есть 5 столбцов & 5 строк, затем отображается пустой 6-й столбец и строка. Смотрите изображение:
Вопрос - Как я могу избавиться от этих пустых строк? Обратите внимание, что содержимое DataGrid заполняется программно (т. Е. Не является статичным).
благодаря
EDIT: Я получил дополнительный ряд фиксированного (через CanUserAddRows), но я до сих пор есть проблемы с дополнительной колонкой справа.
Проблема с дополнительным столбцом справа, как представляется, связана с автоматической установкой ширины столбцов. DataGrid на самом деле настроен (см. XAML ниже), так что есть GridSplitter, как раз по праву. Когда я перемещаю GridSplitter, я отмечаю, что столбцы DataGrid не изменяются автоматически. Таким образом, общая проблема заключается в том, что (a) при запуске отображается частичный дополнительный столбец, и (b) после перемещения 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>