在C#中使用复选框进行数据筛选的一种常见方法是在复选框的CheckedChanged事件中编写筛选逻辑。具体步骤如下:
在窗体中添加一个或多个复选框控件,并为每个复选框控件设置合适的文本和名称。
在窗体的代码文件中,为每个复选框的CheckedChanged事件添加事件处理方法。在事件处理方法中,编写筛选逻辑。
例如,假设有一个包含学生信息的DataGridView控件,并且有两个复选框控件用于筛选男生和女生。代码示例如下:
private void checkBoxMale_CheckedChanged(object sender, EventArgs e)
{
FilterData();
}
private void checkBoxFemale_CheckedChanged(object sender, EventArgs e)
{
FilterData();
}
private void FilterData()
{
string filterExpression = "";
if (checkBoxMale.Checked)
{
filterExpression += "Gender = 'Male'";
}
if (checkBoxFemale.Checked)
{
if (!string.IsNullOrEmpty(filterExpression))
{
filterExpression += " OR ";
}
filterExpression += "Gender = 'Female'";
}
if (string.IsNullOrEmpty(filterExpression))
{
(dataGridView1.DataSource as DataTable).DefaultView.RowFilter = null;
}
else
{
(dataGridView1.DataSource as DataTable).DefaultView.RowFilter = filterExpression;
}
}
在上面的代码示例中,当复选框状态发生变化时,会调用FilterData方法进行数据筛选。在FilterData方法中,根据复选框的状态,构建筛选表达式,并将其应用到DataGridView控件的数据源中,以实现数据筛选功能。