C# ListBoxItem与ListViewItem的GridViewColumn绑定
我一直在玩C# ListBoxItem与ListViewItem的GridViewColumn绑定,c#,wpf,xaml,listview,listbox,C#,Wpf,Xaml,Listview,Listbox,我一直在玩gridview,遇到了一个奇怪的行为,绑定到GridViewColumns 使用此XAML: <ListView Name="lv"> <ListView.View> <GridView> <GridViewColumn Header="First" DisplayMemberBinding="{Binding firstName}"/> <GridViewC
gridview
,遇到了一个奇怪的行为,绑定到GridViewColumns
使用此XAML:
<ListView Name="lv">
<ListView.View>
<GridView>
<GridViewColumn Header="First" DisplayMemberBinding="{Binding firstName}"/>
<GridViewColumn Header="Last" DisplayMemberBinding="{Binding lastName}"/>
</GridView>
</ListView.View>
</ListView>
而以下不显示数据:
public class Foo : ListBoxItem { // ListBoxItem
public string firstName { get; set; }
public string lastName { get; set; }
}
public partial class MainWindow : Window {
public MainWindow() {
InitializeComponent();
lv.Items.Add(new Foo { firstName = "John", lastName = "Doe" });
lv.Items.Add(new Foo { firstName = "Jane", lastName = "Smith" });
}
}
public class Foo : ListViewItem { // ListViewItem
public string firstName { get; set; }
public string lastName { get; set; }
}
public partial class MainWindow : Window {
public MainWindow() {
InitializeComponent();
lv.Items.Add(new Foo { firstName = "John", lastName = "Doe" });
lv.Items.Add(new Foo { firstName = "Jane", lastName = "Smith" });
}
}
为什么下面显示数据。。。而以下内容不显示数据
因为ListView
控件不会为ListViewItem
生成任何ListViewItem
容器。对于添加到Items
或ItemsSource
集合的所有其他类型的对象,将生成一个隐式ListViewItem
容器
有关物品容器的更多信息,请参阅