Я возился с GridViews
и натолкнулся на странное поведение с привязками к 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" });
}
}