[C#] ItemSource에 대한 WPF Listview 바인딩?


Answers

표시 할 열을 선택해야합니다.

<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>
Question

다음 목록보기가 있지만 실제 레코드를 표시하지 않지만 개체의 네임 스페이스 만 표시합니다. XAML에서 열을 만들어 레코드를 표시 한 다음 개체의 일부 속성에 바인딩하거나이 문제가 무엇인지 궁금합니다.

<ListView
            Name="ListCustomers"
            ItemsSource="{Binding Path=ListOfCustomers}"
            SelectedItem="{Binding Path=SelectedCustomer}"
            SelectionMode="Single"
            IsSynchronizedWithCurrentItem="True"
            HorizontalAlignment="Stretch"
            VerticalAlignment="Stretch"
            MinHeight="100"

            ></ListView>

ListOfCustomersObservableCollection<Customer> 형식입니다. 실제 고객은 ObservableCollection에로드되지만 표시되지는 않습니다. 없어진 물건 있어요?




ListOfCustomers 속성 (표시 할 항목 목록을 반환 함)을 노출하는 인스턴스로 ListView의 DataContext 속성을 설정하지 않았기 때문입니까?




시도해 볼 수도 있습니다.

<ListView
.
.
ItemTemplate="{StaticResource CustomerDataTemplate}"
.
.
/>

여기서 CustomerDataTemplate은 Customer 클래스의 DataTemplate입니다.