当CheckBox控件在DataRepeater上时,如何从数据库检索CheckBox的检查状态



我想在winforms中使用c#检索DataRepeater和数据库上未绑定的CheckBox控件的检查状态。我从任务表中拖动"任务状态"字段作为包含0(将用作false)和1(将用作checkBox1.Checkedtrue)的标签。

截图

正如你在图片中看到的,我想让未绑定的复选框从复选框下的标签(绿色箭头)转换那些1和0来获取它的复选状态。

这是我用来设置复选框的代码:

private void dataRepeater3_DrawItem(object sender, Microsoft.VisualBasic.PowerPacks.DataRepeaterItemEventArgs e) 
{
    if (((Label)dataRepeater3.CurrentItem.Controls["stateLabel1"]).Text == "1") 
    { 
        ((CheckBox)dataRepeater3.CurrentItem.Controls["checkBox1"]).Checked = true; 
    } 
    else 
    { 
        ((CheckBox)dataRepeater3.CurrentItem.Controls["checkBox1"]).Checked = false; 
    } 
}

每次绘制中继器时都需要循环遍历控件。在你的drawwitem方法中试试:

foreach ( DataRepeaterItem rowItem in dataRepeater1.Controls )
    {
        if (((Label)rowItem.Controls["stateLabel1"]).Text == "1") 
        { 
            ((CheckBox)rowItem.Controls["checkBox1"]).Checked = true; 
        } 
        else 
        { 
            ((CheckBox)rowItem.Controls["checkBox1"]).Checked = false; 
        } 
    }

最新更新