使用更少 XAML 和更多 C# 的解决方案
如果ListView
在 XAML 中定义:
<ListView x:Name="listView"/>
然后您可以添加列并在 C# 中填充它:
public Window()
{
// Initialize
this.InitializeComponent();
// Add columns
var gridView = new GridView();
this.listView.View = gridView;
gridView.Columns.Add(new GridViewColumn {
Header = "Id", DisplayMemberBinding = new Binding("Id") });
gridView.Columns.Add(new GridViewColumn {
Header = "Name", DisplayMemberBinding = new Binding("Name") });
// Populate list
this.listView.Items.Add(new MyItem { Id = 1, Name = "David" });
}
见MyItem
下文定义。
使用更多 XAML 和更少 C# 的解决方案
但是,在 XAML 中定义列更容易(在ListView
定义中):
<ListView x:Name="listView">
<ListView.View>
<GridView>
<GridViewColumn Header="Id" DisplayMemberBinding="{Binding Id}"/>
<GridViewColumn Header="Name" DisplayMemberBinding="{Binding Name}"/>
</GridView>
</ListView.View>
</ListView>
然后只需在 C# 中填充列表:
public Window()
{
// Initialize
this.InitializeComponent();
// Populate list
this.listView.Items.Add(new MyItem { Id = 1, Name = "David" });
}
见MyItem
下文定义。
MyItem
定义
MyItem
定义如下:
public class MyItem
{
public int Id { get; set; }
public string Name { get; set; }
}