Retrieve value of checkbox column from gridview
-
Hi, I have set up a ListView, and in its GridView, I have inserted a checkbox column. However, I can't figure out how to get/set the IsChecked property from code-behind. Here's my XAML:
<ListView Margin="151.2,30,123.8,8" Name="lvSongs" ItemsSource="{Binding}" SelectionMode="Extended">
<ListView.View>
<GridView x:Name="gridViewSongs">
<GridViewColumn x:Name="chkColSongs">
<GridViewColumn.CellTemplate>
<DataTemplate x:Name="chkCol">
<CheckBox Name="chk" />
</DataTemplate>
</GridViewColumn.CellTemplate>
<CheckBox x:Name="chkHeader"></CheckBox>
</GridViewColumn>
<GridViewColumn Header="Song Name" DisplayMemberBinding="{Binding Name}" Width="110"/>
<GridViewColumn Header="Artist" DisplayMemberBinding="{Binding Artist}" Width="125"/>
<GridViewColumn Header="Album" DisplayMemberBinding="{Binding Album}" Width="200"/>
<GridViewColumn Header="File Size (MB)" DisplayMemberBinding="{Binding Size}" Width="100"/>
</GridView>
</ListView.View>
</ListView>How do I go about changing / retrieving the values of each individual checkbox? Any help is greatly appreciated. Thanks, Mitch
-
Hi, I have set up a ListView, and in its GridView, I have inserted a checkbox column. However, I can't figure out how to get/set the IsChecked property from code-behind. Here's my XAML:
<ListView Margin="151.2,30,123.8,8" Name="lvSongs" ItemsSource="{Binding}" SelectionMode="Extended">
<ListView.View>
<GridView x:Name="gridViewSongs">
<GridViewColumn x:Name="chkColSongs">
<GridViewColumn.CellTemplate>
<DataTemplate x:Name="chkCol">
<CheckBox Name="chk" />
</DataTemplate>
</GridViewColumn.CellTemplate>
<CheckBox x:Name="chkHeader"></CheckBox>
</GridViewColumn>
<GridViewColumn Header="Song Name" DisplayMemberBinding="{Binding Name}" Width="110"/>
<GridViewColumn Header="Artist" DisplayMemberBinding="{Binding Artist}" Width="125"/>
<GridViewColumn Header="Album" DisplayMemberBinding="{Binding Album}" Width="200"/>
<GridViewColumn Header="File Size (MB)" DisplayMemberBinding="{Binding Size}" Width="100"/>
</GridView>
</ListView.View>
</ListView>How do I go about changing / retrieving the values of each individual checkbox? Any help is greatly appreciated. Thanks, Mitch
I figured out the solution. I created another column in my DataTable that is being tied to my ListView, and I bound the chk Checkbox to that column. Now, in order to get the value of checked or not, I can just retrieve the item from the DataTable and it'll output True or False. Here's my new XAML code:
<ListView Margin="151.2,30,123.8,8" Name="lvSongs" ItemsSource="{Binding}" SelectionMode="Extended"> <ListView.View> <GridView x:Name="gridViewSongs"> <GridViewColumn x:Name="chkColSongs"> <GridViewColumn.CellTemplate> <DataTemplate x:Name="chkCol"> <CheckBox Name="chk" IsChecked="{Binding Checked}" /> </DataTemplate> </GridViewColumn.CellTemplate> <CheckBox x:Name="chkHeader"></CheckBox> </GridViewColumn> <GridViewColumn Header="Song Name" DisplayMemberBinding="{Binding Name}" Width="110"/> <GridViewColumn Header="Artist" DisplayMemberBinding="{Binding Artist}" Width="125"/> <GridViewColumn Header="Album" DisplayMemberBinding="{Binding Album}" Width="200"/> <GridViewColumn Header="File Size (MB)" DisplayMemberBinding="{Binding Size}" Width="100"/> </GridView> </ListView.View> </ListView>
:) Thanks.