我有一个DataGrid
:
代码:
<DataGrid Name="DatabaseView1" Grid.Row="1">
<DataGrid.Columns>
<DataGridTextColumn Header="First name" Binding="{Binding Path=FirstName}"/>
<DataGridTextColumn Header="Last name" Binding="{Binding Path=LastName}"/>
<DataGridTextColumn Header="Age" Binding="{Binding Path=Age}"/>
</DataGrid.Columns>
</DataGrid>
此datagrid一个接一个地包含多个条目。我收集列表中的条目:
public static List<Entry> Entries = new List<Entry>();
public class Entry
{
public string FirstName { get; set; }
public string Lastname { get; set; }
public int Age { get; set; }
}
我添加一个新条目,如下所示:
Entries.Add(new Entry {FirstName = "Christiano", LastName = "Ronaldo", Age = "35"});
我将以下条目添加到DataGrid
:
DatabaseView1.ItemsSource = Entries;
这是我的结果:
您会看到创建了两个条目。有人知道为什么会这样吗?
提前谢谢你。
正在生成双列,因为您尚未通知DataGrid
停止为已分配的ItemSource
自动生成列。因此,要禁用autoGenerateColumns
,只需在xaml DataGrid中设置autoGenerateColumns=false
即可。
<DataGrid Name="DatabaseView1" Grid.Row="1" AutoGenerateColumns = "False">