gpt4 book ai didi

c# - ListBoxItem 与 ListViewItem 的 GridViewColumn 绑定(bind)

转载 作者:太空宇宙 更新时间:2023-11-03 14:52:22 26 4
gpt4 key购买 nike

我一直在摆弄 GridViews 并遇到了绑定(bind)到 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" });
}
}

最佳答案

why does the following display the data ... while the following does not display the data

因为 ListView 控件不会为 ListViewItem 生成任何 ListViewItem 容器。对于您添加到 ItemsItemsSource 集合的所有其他类型的对象,将生成隐式 ListViewItem 容器。

请引用this blog post有关元素容器的更多信息。

关于c# - ListBoxItem 与 ListViewItem 的 GridViewColumn 绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51196324/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com