Чтобы получить выбранный флажок значение listview в WPF - PullRequest
0 голосов
/ 19 декабря 2011

У меня есть код типа

<ListView ItemsSource="{Binding}"  Height="110.277" Margin="4,0,3,-138" Name="listView1" VerticalAlignment="Bottom">
   <ListBox.ItemTemplate>
      <DataTemplate>

        <!--<TextBlock Text="{Binding Path=Name}" Width="100" />-->
        <!--<CheckBox  IsChecked="{Binding IsSelected, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ListViewItem}}}"  Width="100"/>-->
        <CheckBox Name="chk1" Content="{Binding Path=Name}" IsChecked="{Binding IsPersonChecked}" Checked="checked_accname"   Width="100" />

      </DataTemplate>
 </ListBox.ItemTemplate>

, в котором я буду динамически связывать значение для флажка из db при событии buttonclick. Я не могу получить значение проверенногофлажок просмотра списка.

Пожалуйста, помогите мне в этом.Заранее спасибо

1 Ответ

1 голос
/ 19 декабря 2011

Не пытайтесь получить проверенное значение из пользовательского интерфейса.Используйте свойство IsPersonChecked из объекта данных.

var persons = listView1.DataContext as Persons;
var selectedPersonsQuery = from person in persons
                           where person.IsPersonChecked
                           select person;

EDIT

После понимания того, что вы использовали DataView, ваш запрос будет выглядеть примерно так:

var dataView = listView1.DataContext as DataView;
var selectedPersonRowsQuery = from row in dataView
                              where row["IsPersonChecked"]
                              select row;
...