Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/284.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.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# asp复选框代码隐藏验证_C#_Asp.net_Checkbox - Fatal编程技术网

C# asp复选框代码隐藏验证

C# asp复选框代码隐藏验证,c#,asp.net,checkbox,C#,Asp.net,Checkbox,我在我的aspx页面上有一个复选框,它根据一些其他变量从字符串列表中加载, 我只希望用户能够选择这些框的固定数量;电流常数是6。在我的代码背后,我一直试图验证这一点,因为我去;如果“selectedCount”等于我在另一个类中找到的常数,我会做一些事情。问题是它无法识别支票 int selectedCount = 0; for (int i = 0; i < checkbox.Items.Count; i++) { if (che

我在我的aspx页面上有一个复选框,它根据一些其他变量从字符串列表中加载, 我只希望用户能够选择这些框的固定数量;电流常数是6。在我的代码背后,我一直试图验证这一点,因为我去;如果“selectedCount”等于我在另一个类中找到的常数,我会做一些事情。问题是它无法识别支票

int selectedCount = 0;
        for (int i = 0; i < checkbox.Items.Count; i++)
        {

            if (checkbox.Items[i].Selected == true)
            {
                selectedCount++;
            }
        }

我的问题是,它循环遍历列表中的每个项目,但即使在选定的项目上,它也返回false。在这种情况下,如何正确检查我的已选/未选bool?因为这显然不起作用

我能想到的一件事是在回发中再次绑定复选框列表

为了防止它,您需要使用IsPostBack


你可以发布你的复选框的ASPX吗?复选框是checkboxlist吗?你可以发布你正在进行数据绑定的代码吗?请注意,如果您在未选中IsPostback的情况下进行数据绑定OnLoad,则控件将在每次回发时重新绑定,并且在上述代码运行时,您将丢失其预期状态。您可以显示页面加载吗?太棒了。这是回邮,我把数据带放在了一边,如果!iPostBack及其现在正在工作。狡猾的家伙。谢谢。这有帮助。我在页面加载时没有注意到,它正在自行重置。我把它扔进了垃圾桶!发回如果它工作得很好。非常感谢。
<asp:CheckBoxList runat="server" ID="CheckBoxList1" />
<asp:Button runat="server" ID="Button1" Text="Submit" OnClick="Button1_Click" />

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        CheckBoxList1.Items.Add(new ListItem("One", "1"));
        CheckBoxList1.Items.Add(new ListItem("Two", "2"));
        CheckBoxList1.Items.Add(new ListItem("Three", "3"));
        CheckBoxList1.Items.Add(new ListItem("Four", "4"));
    }
}

protected void Button1_Click(object sender, EventArgs e)
{
    int selectedCount = 0;
    var selectedText = new List<string>();
    foreach (ListItem item in CheckBoxList1.Items)
    {
        if (item.Selected)
        {
            selectedCount++;
            selectedText.Add(item.Text);
        }
    }
}