datagridview c#的复选框的选中项目

时间:2018-07-28 21:38:01

标签: c# wpf checkbox datagridview

我在datagridview中添加了复选框,我想检查是否选中了一个项目,然后读取内容值,但是我有点困惑如何实现它。
这是Xmal代码

<DataGrid.Columns>
    <DataGridTemplateColumn Header="#">
        <DataGridTemplateColumn.CellTemplate>
            <DataTemplate>
                <CheckBox x:Name="checkboxinstance" Checked="checked_it" Unchecked="unchecked_it" content ="{Binding apiName }" />
            </DataTemplate>
        </DataGridTemplateColumn.CellTemplate>
    </DataGridTemplateColumn>
</DataGrid.Columns>

这在代码后面:

private void checked_it(object sender, RoutedEventArgs e)
{
    List<CheckBox> checkBoxlist = new List<CheckBox>();
    foreach (CheckBox c in checkBoxlist)
    {
        //what I add here
    }
}

1 个答案:

答案 0 :(得分:3)

您可以使用IsChecked属性来检查该复选框是否已被选中。 要读取Content的值,必须将类型强制转换为TextBlock

foreach (CheckBox c in checkBoxlist)
{
     If (c.IsChecked == true)
        {
        //Code when checkbox is checked
        var _tempTBL = (TextBlock) c.Content; //Get handle to TextBlock
        var foo = _tempTBL.Text; //Read TextBlock's text
        //foo is now a string of the checkbox's content
        }
}

MSDN link to the IsChecked property

MSDN link to the Content property