Search code examples
checkboxuwpdatagriddocument

Datagrid Checkbox in UWP


I am struggling to find a working example of a utilised checkbox for my datagrid in UWP. I would like to use my check box -> press a button -> do X.

I dont suppose any of you could either give me an example of the process or point me to a documented example? Thanks

This is what I have:

<StackPanel Margin="169,33,0,0" Height="25" VerticalAlignment="Top" Background="#FF383838"/>
        <controls:DataGrid x:Name="EmployeeGrid" Margin="170,55,35,35"
                  ItemsSource="{x:Bind persons}"
                  CanUserSortColumns="True"
                  AutoGenerateColumns="False" Background="Black"
                           SelectedItem="itemSelected" >
            <controls:DataGrid.Columns>
                <controls:DataGridTextColumn Header="Employee ID"
                                             Binding="{Binding PersonId}"/>
                <controls:DataGridTextColumn Header="First Name"
                                             Binding="{Binding FirstName}"/>
                <controls:DataGridTextColumn Header="Last Name"
                                             Binding="{Binding LastName}"/>
                <controls:DataGridTextColumn Header="Address"
                                             Binding="{Binding Address}"/>
                <controls:DataGridTextColumn Header="Position"
                                             Binding="{Binding Position}"/>
                <controls:DataGridTextColumn Header="Pay Rate (ph)"
                                             Binding="{Binding PayratePH}"/>
                <controls:DataGridTextColumn Header="Sex"
                                             Binding="{Binding Sex}"/>
                <controls:DataGridTextColumn Header="TaxCode"
                                             Binding="{Binding TaxCode}"/>
                <controls:DataGridTextColumn Header="Email"
                                             Binding="{Binding Email}"/>
                <controls:DataGridTextColumn Header="Emergency Contact"
                                             Binding="{Binding EmergencyDetails}"/>
                <controls:DataGridCheckBoxColumn Header="Selected"  
                                                    />
                

            </controls:DataGrid.Columns>
        </controls:DataGrid>

Solution

  • like to use my check box -> press a button -> do X.

    DataGrid contains DataGridTemplateColumn that used to custom cell, you could insert CheckBox into CellTemplate and binding the Checked with data model bool property, when you want to check the CheckBox, please modify model's bool property.

    <controls:DataGridTemplateColumn Header="Check">
        <controls:DataGridTemplateColumn.CellTemplate>
            <DataTemplate>
                <StackPanel Orientation="Horizontal">
                    <CheckBox Content="{Binding Id}" IsChecked="{Binding IsCheck}" />
                </StackPanel>
            </DataTemplate>
        </controls:DataGridTemplateColumn.CellTemplate>
    </controls:DataGridTemplateColumn>
    

    For more detail please refer this code sample.