我将DataGrid
绑定到一个列表,并且在我启动程序时,所有内容都已加载DataGrid
显示了列表的所有内容,但是重复了两次列,就像在图片中一样。
DataGrid image
这是我的DataGrid
代码。谁能帮忙为什么会这样?
<DataGrid x:Name="componenttable" Height="140" IsReadOnly="True" CanUserAddRows="False" ItemsSource="{Binding Component, Mode=OneWay}" Margin="12,105,10,0" VerticalAlignment="Top">
<DataGrid.Columns>
<DataGridTextColumn Header="ID" Binding="{Binding Id}"/>
<DataGridTextColumn Header="Maker" Binding="{Binding Maker}"/>
<DataGridTextColumn Header="Model" Binding="{Binding Model}"/>
<DataGridTextColumn Header="Notes" Width="600" Binding="{Binding Notes}"/>
<DataGridTextColumn Header="Price" Binding="{Binding Price}"/>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button Command="{Binding DataContext.changeCommand, ElementName=componenttable}" CommandParameter="{Binding Path=Id}" >Change</Button>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTemplateColumn Width="*">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button Command="{Binding DataContext.deleteComponentCommand, ElementName=componenttable}" CommandParameter="{Binding Path=Id}">Delete</Button>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
答案 0 :(得分:0)
您需要将AutoGenerateColumns="False"
添加到DataGrid标记中。