我有这个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>
此数据网格一个接一个地包含几个条目。我将条目收集在一个列表中:
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;
这是我的结果:
您看到已创建两个条目。有人知道为什么会这样吗?
谢谢。
答案 0 :(得分:2)
正在生成双列,因为您没有告诉DataGrid
停止自动为分配的ItemSource
生成列。因此,要禁用AutoGenerateColumns
,只需在xaml DataGrid中设置AutoGenerateColumns = False
。
<DataGrid Name="DatabaseView1" Grid.Row="1" AutoGenerateColumns = "False">