Ho un questo codice: è selezionataWPF ListViewItem voce casella
<ListView Height="238"
HorizontalAlignment="Left"
Name="listView1"
VerticalAlignment="Top"
Width="503"
ItemsSource="{Binding}"
IsSynchronizedWithCurrentItem="True">
<ListView.View>
<GridView>
<GridView.Columns>
<GridViewColumn>
<GridViewColumn.CellTemplate>
<DataTemplate>
<CheckBox Tag="{Binding ID}"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn DisplayMemberBinding="{Binding ID}" Header="ID" />
<GridViewColumn DisplayMemberBinding="{Binding Name}" Header="Name" />
</GridView.Columns>
</GridView>
</ListView.View>
</ListView>
Come faccio a sapere quanti casella è selezionata, e ottenere il tag valore di ogni casella di controllo?
Puoi essere più gentile di quello che vuoi raggiungere? –
Uso la casella di controllo per eliminare Righe è selezionato, ma non posso ottenere il tag di valore della casella di controllo è selezionato. –
la raccolta di oggetti che sono stati associati a ListView presenta un ID proprietà associato alla proprietà Tag della casella di controllo. Invece, avere una proprietà booleana in quell'oggetto e collegarla con la proprietà IsChecked di Checkbox. Quindi puoi semplicemente iterare la tua collezione nel tuo viewmodel e vedere quali elementi sono stati selezionati dall'utente. Ulteriori cose di cui avrai bisogno di fare attenzione: 1. Fai in modo che l'oggetto implementi INotifyPropertyChanged. 2. Utilizzare l'associazione bidirezionale per la casella di controllo. Facci sapere se hai bisogno di un codice di esempio. – publicgk