2017-01-19 52 views
0

CheckedListBoxの代わりにListViewを使用するプログラムを実行しようとしています。チェックされた要素のインデックスを取得したいとします。UWPでListView要素のチェックボックスの値を取得したい

私は、ListViewコントロールのテンプレートとしてこれを使用する:

<ListView x:Name="Content" HorizontalAlignment="Left" Height="303" Margin="10,47,0,0" VerticalAlignment="Top" Width="394" ItemClick="Content_ItemClick" SelectionChanged="Content_SelectionChanged"> 
    <ListView.ItemTemplate> 
     <DataTemplate> 
      <StackPanel Orientation="Horizontal"> 
       <CheckBox IsChecked="{Binding Selected}"></CheckBox> 
       <TextBlock Text="{Binding Name}"></TextBlock> 
      </StackPanel> 
     </DataTemplate> 
    </ListView.ItemTemplate> 
</ListView> 

そしてこれは、それが得たもののデータです:私がチェックした要素のインデックスを取り戻す可能性がどのように

public class User 
{ 
    public string Name { get; set; } 
    public bool Selected { get; set; } 
} 

答えて

0
私はあなたのリストビューの項目のソースがバッキングリストにバインドされていると信じて

<ListView ItemSource"{x:Bind UserList, Mode=OneWay}" > 
    <ListItem.ItemTemplate> 
     <DataTemplate> 
     <StackPanel Orientation="Horizontal"> 
      <CheckBox IsChecked="{Binding Selected, Mode=TwoWay} Click="Click_Handler"/> 
      <TextBlock Text="{Binding Name}"/> 
     </StackPanel> 
     </DataTemplate> 
    </ListItem.ItemTemplate> 
    </ListView> 

UserListは、すべてあなたのUserを含むList<User>です。 UserListListViewにバインドしているためです。選択したアイテムをリストを反復して検索し、Userの各プロパティSelectedを読み取ることができます。

+0

ありがとうございました! –

関連する問題