次のリストビューがありますが、実際のレコードは表示されず、オブジェクトの名前空間のみが表示されます。レコードを表示し、オブジェクトのいくつかのプロパティにバインドするためにXAMLで列を作成する必要があるかどうか、またはこれの何が問題なのでしょうか?
<ListView
Name="ListCustomers"
ItemsSource="{Binding Path=ListOfCustomers}"
SelectedItem="{Binding Path=SelectedCustomer}"
SelectionMode="Single"
IsSynchronizedWithCurrentItem="True"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
MinHeight="100"
></ListView>
ListOfCustomers
はObservableCollection<Customer>
タイプ。実際の顧客はObservableCollectionにロードされますが、表示されません。何が欠けている?
表示する列も選択する必要があります。
<ListView ItemsSource="{Binding ListOfCustomers}"
SelectedItem="{Binding Path=SelectedCustomer}"
....>
<ListView.View>
<GridView>
<GridViewColumn Width="140" Header="First Name"
DisplayMemberBinding="{Binding FirstName}" />
<GridViewColumn Width="140" Header="Last Name"
DisplayMemberBinding="{Binding LastName}" />
<GridViewColumn Width="140" Header="Email Address"
DisplayMemberBinding="{Binding Email}" />
....
</GridView>
</ListView.View>
</ListView>
また試すことができます
<ListView
.
.
ItemTemplate="{StaticResource CustomerDataTemplate}"
.
.
/>
customerDataTemplateは、CustomerクラスのDataTemplateです...
ListViewのDataContext
プロパティを、ListOfCustomers
プロパティ(表示するアイテムのリストを返す)を公開するインスタンスに設定していないためですか?