WPF 中的 ListView 子项
ListView SubItems in WPF
我开始学习 WPF c#,在 Windows 表单中,我像这样将子项添加到 ListView
string[] spendDetails = new string[2];
spendDetails[0] = _categoryNames[0];
spendDetails[1] = _categoryValues[0].ToString();
ListViewItem item = new ListViewItem(spendDetails);
_listSpendingView.Items.Add(item);
我无法在 WPF 中执行此操作,那么如何在 WPF 中将子项添加到 ListView?
据我所知,你应该只需要
_listSpendingView.Items.Add(_categoryNames[0]);
Items 集合将保存元素供以后检索,并会自动调用 ToString() 进行显示。
查看
<ListView x:Name="ListView1" >
<ListView.View>
<GridView>
<GridViewColumn Header="id" DisplayMemberBinding="{Binding Path=Id}"/>
<GridViewColumn Header="name" DisplayMemberBinding="{Binding Path=Name}"/>
<GridViewColumn Header="age" DisplayMemberBinding="{Binding Path=Age}"/>
</GridView>
</ListView.View>
</ListView>
视图模型
public class ItemViewModel
{
public Guid Id { get; set; }
public string Name { get; set; }
public int Age { get; set; }
}
演示
for (int i = 0; i < 3; i++)
{
var item = new ItemViewModel()
{
Id = Guid.NewGuid(),
Name = "User" + i,
Age = 8 + i
};
this.ListView1.Items.Add(item);
}
我开始学习 WPF c#,在 Windows 表单中,我像这样将子项添加到 ListView
string[] spendDetails = new string[2];
spendDetails[0] = _categoryNames[0];
spendDetails[1] = _categoryValues[0].ToString();
ListViewItem item = new ListViewItem(spendDetails);
_listSpendingView.Items.Add(item);
我无法在 WPF 中执行此操作,那么如何在 WPF 中将子项添加到 ListView?
据我所知,你应该只需要
_listSpendingView.Items.Add(_categoryNames[0]);
Items 集合将保存元素供以后检索,并会自动调用 ToString() 进行显示。
查看
<ListView x:Name="ListView1" >
<ListView.View>
<GridView>
<GridViewColumn Header="id" DisplayMemberBinding="{Binding Path=Id}"/>
<GridViewColumn Header="name" DisplayMemberBinding="{Binding Path=Name}"/>
<GridViewColumn Header="age" DisplayMemberBinding="{Binding Path=Age}"/>
</GridView>
</ListView.View>
</ListView>
视图模型
public class ItemViewModel
{
public Guid Id { get; set; }
public string Name { get; set; }
public int Age { get; set; }
}
演示
for (int i = 0; i < 3; i++)
{
var item = new ItemViewModel()
{
Id = Guid.NewGuid(),
Name = "User" + i,
Age = 8 + i
};
this.ListView1.Items.Add(item);
}