如何将子项添加到ListView
?我需要动态生成所有内容,但我发现的每个示例都使用XAML。
非WPF非常简单:
ListViewItem lvi = listview.items.add(wahtever);
lvi. blah blah blah
如何在不使用XAML的情况下在WPF中添加子项?
答案 0 :(得分:6)
如前所述,WPF没有像WinForms这样的子项。相反,您可以在适合您目的的对象上使用属性。
为了完整性,这里的XAML与代码形成对比。
XAML:
<UniformGrid Columns="2">
<ListView Name="xamlListView">
<ListView.View>
<GridView>
<GridViewColumn Header="X Value" DisplayMemberBinding="{Binding X}"/>
<GridViewColumn Header="Y Value" DisplayMemberBinding="{Binding Y}"/>
</GridView>
</ListView.View>
<ListView.Items>
<PointCollection>
<Point X="10" Y="20"/>
<Point X="20" Y="30"/>
</PointCollection>
</ListView.Items>
</ListView>
<ListView Name="codeListView"/>
</UniformGrid>
代码:
private void Window_Loaded(object sender, RoutedEventArgs e)
{
var view = new GridView();
view.Columns.Add(new GridViewColumn { Header = "First Name", DisplayMemberBinding = new Binding("First") });
view.Columns.Add(new GridViewColumn { Header = "Last Name", DisplayMemberBinding = new Binding("Last") });
codeListView.View = view;
codeListView.Items.Add(new { First = "Bill", Last = "Smith" });
codeListView.Items.Add(new { First = "Jane", Last = "Doe" });
}
答案 1 :(得分:5)
“WPF方式”是将listview绑定到表示要显示的数据的集合。然后将包含数据的对象添加到该集合。您几乎从不应该按照计划手动将ListViewItems
添加到列表中。我可以拿出一个例子,但是SO上已经有很多线程可以解决这个问题:
答案 2 :(得分:-3)
SubItem还是ListItem? 易:
myListbox.Items.Add(object);
您可以将任何类型的对象添加到该集合或特定的ListBoxItem对象中,如下所示:
this.List.Items.Add(new ListBoxItem{ Content = "Value to display"});