2014-02-09 34 views
1

我使用下面的代码,例如当集合是字段与数据像2项我在屏幕上看到2行数据和多一个空行在列表的末尾。DataGrid表显示额外的不必要的空行

我怎样才能省略这最后一个空行?该集合只有2个条目。收集项目只有2个条目。

<DataGrid RowHeaderWidth="0" ItemsSource="{Binding Items}" AutoGenerateColumns="False"> 
    <!--<DataGrid.Resources> 
      <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="LightBlue" /> 
     </DataGrid.Resources>--> 
    <DataGrid.Columns> 
     <DataGridTemplateColumn Header="1" Width="*"> 
      <DataGridTemplateColumn.CellTemplate> 
       <DataTemplate> 
        <CheckBox IsChecked="{Binding Column1, UpdateSourceTrigger=PropertyChanged}"/> 
       </DataTemplate> 
      </DataGridTemplateColumn.CellTemplate> 
     </DataGridTemplateColumn> 

     <DataGridTextColumn Binding="{Binding Column2}" Header="2" Width="*" /> 
     <DataGridTextColumn Binding="{Binding Column3}" Header="3" Width="*" /> 
     <DataGridTextColumn Binding="{Binding Column4}" Header="4" Width="*" /> 
     <DataGridTextColumn Binding="{Binding Column5}" Header="5" Width="*" /> 
    </DataGrid.Columns> 
</DataGrid> 

回答

3

尝试CanUserAddRows设置,注册默认为真:

<DataGrid Name="MyDataGrid" 
      CanUserAddRows="False" ... /> 

报价从MSDN

当此属性设置为一个空白行显示在DataGrid的底部。用户可以在空白行中输入新项目。添加一个新行将项目添加到ItemsSource。

+0

即使设计器的“属性”窗口中的“CanUserAddRows”为false,但如果它未在XAML中显式设置为False(CanUserAddRows =“False”),则这将不起作用。 – Traubenfuchs