У меня есть следующий listview, но он не показывает фактические записи, но только пространство имен объекта. Я задался вопросом, должен ли я создать столбцы в 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>
Это потому, что вы не установили свойство DataContext
ListView с экземпляром, который предоставляет ListOfCustomers
свойство (которое возвращает список отображаемых элементов)?
Вы также можете попробовать
<ListView
.
.
ItemTemplate="{StaticResource CustomerDataTemplate}"
.
.
/>
, где CustomerDataTemplate - это DataTemplate для класса Customer ...