Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/272.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在数据绑定后检查复选框中的值_C#_Asp.net_Checkbox - Fatal编程技术网

C# 如何在数据绑定后检查复选框中的值

C# 如何在数据绑定后检查复选框中的值,c#,asp.net,checkbox,C#,Asp.net,Checkbox,我正在将数据绑定到一个复选框,所以我在复选框中显示了6个值,用户在创建时会得到2个随机值。在执行数据绑定后,如何检查复选框中的值。如果为用户指定了值2和4,则复选框应显示1到6,我正在使用databind执行此操作,并且我必须选中值2和4如何执行此操作 while (reader.Read()) { rolegiven.Add(reader["RoleName"].ToString()); } reader.Close()

我正在将数据绑定到一个复选框,所以我在复选框中显示了6个值,用户在创建时会得到2个随机值。在执行数据绑定后,如何检查复选框中的值。如果为用户指定了值2和4,则复选框应显示1到6,我正在使用databind执行此操作,并且我必须选中值2和4如何执行此操作

 while (reader.Read())
        {
            rolegiven.Add(reader["RoleName"].ToString());
        }
        reader.Close();
        if (rolegiven.Any(item => item.Equals("Value1")))
        {
            ckl_EditRole.SelectedIndex = 0;
        }else{}
        if (rolegiven.Any(item => item.Equals("Value2")))
        {
            ckl_EditRole.SelectedIndex = 1;
        }else{}
        if (rolegiven.Any(item => item.Equals("Value3")))
        {
            ckl_EditRole.SelectedIndex = 2;
        }else{}

如果选择了值2和3(从数据绑定中,我发现为用户提供了值2和值3),则只检查值3。如何执行此操作

您必须使用
集合的
复选框列表
控件

List<string> rolegiven = new List<string>()
    {
         "A","B","C","D","E","F"
    };
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            CheckBoxList1.DataSource = rolegiven;
            CheckBoxList1.DataBind();

            CheckBoxList1.Items[0].Selected = true;
            CheckBoxList1.Items[2].Selected = true;
            CheckBoxList1.Items[4].Selected = true;

            //or

            if(rolegiven.Any(item => item.Equals("A")))
              CheckBoxList1.Items[0].Selected = true;
            if(rolegiven.Any(item => item.Equals("D")))
              CheckBoxList1.Items[3].Selected = true;
            ...
        }
    }
List rolegiven=新列表()
{
“A”、“B”、“C”、“D”、“E”、“F”
};
受保护的无效页面加载(对象发送方、事件参数e)
{
如果(!IsPostBack)
{
CheckBoxList1.DataSource=rolegiven;
CheckBoxList1.DataBind();
CheckBoxList1.Items[0]。Selected=true;
CheckBoxList1.Items[2]。Selected=true;
CheckBoxList1.Items[4]。Selected=true;
//或
如果(rolegiven.Any(item=>item.Equals(“A”))
CheckBoxList1.Items[0]。Selected=true;
如果(rolegiven.Any(item=>item.Equals(“D”))
CheckBoxList1.Items[3]。Selected=true;
...
}
}

我猜您正在绑定复选框列表,并且希望选中复选框item2和item4。是吗?是的,我想选择多个项目