Check if all checkboxes of form are checked

Multi tool use
Multi tool use





.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ height:90px;width:728px;box-sizing:border-box;
}







-3















I have multiple checkboxes that I created dinamically from code, So I know I can get checkboxes using:



foreach (var checkBox in this.Controls.OfType<CheckBox>())
{

}


But that I want to know or my desire result is to know if all checkboxes of my form are checked something like a bool returning true if all checkboxes are checked or false if one is missing... How can I achieve that? Regards



bool allChecked = ... 









share|improve this question

























  • Can't you just get all the unchecked controls by reversing the logic of your where clause and checking that the count is equal to zero?

    – Lithium
    Jan 3 at 22:08






  • 1





    Are any of the CheckBoxes inside panels or other containers?

    – LarsTech
    Jan 3 at 22:13











  • Using your code above, you could start out with bool allChecked = true; and inside your foreach add the lines: if (!checkbox.Checked) { allChecked = false; break; }

    – Rufus L
    Jan 3 at 22:15


















-3















I have multiple checkboxes that I created dinamically from code, So I know I can get checkboxes using:



foreach (var checkBox in this.Controls.OfType<CheckBox>())
{

}


But that I want to know or my desire result is to know if all checkboxes of my form are checked something like a bool returning true if all checkboxes are checked or false if one is missing... How can I achieve that? Regards



bool allChecked = ... 









share|improve this question

























  • Can't you just get all the unchecked controls by reversing the logic of your where clause and checking that the count is equal to zero?

    – Lithium
    Jan 3 at 22:08






  • 1





    Are any of the CheckBoxes inside panels or other containers?

    – LarsTech
    Jan 3 at 22:13











  • Using your code above, you could start out with bool allChecked = true; and inside your foreach add the lines: if (!checkbox.Checked) { allChecked = false; break; }

    – Rufus L
    Jan 3 at 22:15














-3












-3








-3








I have multiple checkboxes that I created dinamically from code, So I know I can get checkboxes using:



foreach (var checkBox in this.Controls.OfType<CheckBox>())
{

}


But that I want to know or my desire result is to know if all checkboxes of my form are checked something like a bool returning true if all checkboxes are checked or false if one is missing... How can I achieve that? Regards



bool allChecked = ... 









share|improve this question
















I have multiple checkboxes that I created dinamically from code, So I know I can get checkboxes using:



foreach (var checkBox in this.Controls.OfType<CheckBox>())
{

}


But that I want to know or my desire result is to know if all checkboxes of my form are checked something like a bool returning true if all checkboxes are checked or false if one is missing... How can I achieve that? Regards



bool allChecked = ... 






c# winforms






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Jan 3 at 22:08







Jonathan

















asked Jan 3 at 22:05









JonathanJonathan

28412




28412













  • Can't you just get all the unchecked controls by reversing the logic of your where clause and checking that the count is equal to zero?

    – Lithium
    Jan 3 at 22:08






  • 1





    Are any of the CheckBoxes inside panels or other containers?

    – LarsTech
    Jan 3 at 22:13











  • Using your code above, you could start out with bool allChecked = true; and inside your foreach add the lines: if (!checkbox.Checked) { allChecked = false; break; }

    – Rufus L
    Jan 3 at 22:15



















  • Can't you just get all the unchecked controls by reversing the logic of your where clause and checking that the count is equal to zero?

    – Lithium
    Jan 3 at 22:08






  • 1





    Are any of the CheckBoxes inside panels or other containers?

    – LarsTech
    Jan 3 at 22:13











  • Using your code above, you could start out with bool allChecked = true; and inside your foreach add the lines: if (!checkbox.Checked) { allChecked = false; break; }

    – Rufus L
    Jan 3 at 22:15

















Can't you just get all the unchecked controls by reversing the logic of your where clause and checking that the count is equal to zero?

– Lithium
Jan 3 at 22:08





Can't you just get all the unchecked controls by reversing the logic of your where clause and checking that the count is equal to zero?

– Lithium
Jan 3 at 22:08




1




1





Are any of the CheckBoxes inside panels or other containers?

– LarsTech
Jan 3 at 22:13





Are any of the CheckBoxes inside panels or other containers?

– LarsTech
Jan 3 at 22:13













Using your code above, you could start out with bool allChecked = true; and inside your foreach add the lines: if (!checkbox.Checked) { allChecked = false; break; }

– Rufus L
Jan 3 at 22:15





Using your code above, you could start out with bool allChecked = true; and inside your foreach add the lines: if (!checkbox.Checked) { allChecked = false; break; }

– Rufus L
Jan 3 at 22:15












3 Answers
3






active

oldest

votes


















1














If you want to verify that all checkboxes on the form are checked, even those that belong to other container controls, you will have to iterate over each control's Controls collection (not just those belonging to the Form).



One way to do this is to write a recursive method that takes in a container control (like the Form) and examines all the controls in it's collection. If any contained control is a Checkbox and it isn't checked, then return false. Otherwise, perform a recursive check on that control's Controls collection. If neither of these checks is false, then return true.



For example:



private static bool ContainedCheckboxesAreChecked(Control containerControl)
{
// For each control in the container
foreach (Control control in containerControl.Controls)
{
// Return false if the control is a checkbox and it's not checked
if (!(control as CheckBox)?.Checked ?? false) return false;

// Do a recursive check on this control's Controls collection
if (!ContainedCheckboxesAreChecked(control)) return false;
}

// If we got this far, return true
return true;
}


Now, if you call this and pass in the main form as the container control, you will examine all controls on the form, including in all containers (even nested containers):



bool allCheckBoxesAreChecked = ContainedCheckboxesAreChecked(this);





share|improve this answer































    5














    Simply as



    bool allChecked = this.Controls.OfType<CheckBox>().All(c => c.Checked);


    I am not sure what AllControls (in original unedited post) is. Because this property doesn't seem to be a standard one. This example uses the standard Controls collection present in any control container like the top level Form



    The problem is more complex if you have your CheckBoxes distributed inside different control containers. In that case you could use a recursive function that iteratively explore your controls and count how many of them are checked



    int result = RecursiveCheck(f.Controls);
    if(result > 0)
    Console.WriteLine("Something is not checked");

    int RecursiveCheck(Control.ControlCollection col)
    {
    int count = 0;
    foreach(Control c in col)
    {
    if (c.Controls.Count > 0)
    {
    count += c.Controls.OfType<CheckBox>().Count(x => !x.Checked);
    count += RecursiveCheck(c.Controls);
    }
    }
    return count;
    }





    share|improve this answer


























    • I try it but it always return True value

      – Jonathan
      Jan 3 at 22:23











    • Did you have your checkboxes inside some kind of container? (A panel or a groupbox) In this case you need to use the controls collection of the container

      – Steve
      Jan 3 at 22:26











    • Yes, they are inside a FlowLayoutPanel

      – Jonathan
      Jan 3 at 22:28











    • Then change this with the name of your FlowLayoutPanel

      – Steve
      Jan 3 at 22:29











    • Problem is they are inside FlowLayoutPanel, but inside it I have GroupBoxes, so each GroupBox have different checkboxes, I have list of groupBox so I iterate as: foreach (var g in groupBoxes) { }, but now, how can I know if all checkboxes are checked if they are in different Groupboxes?

      – Jonathan
      Jan 3 at 22:42



















    0














    if you are sure that Checkboxes available, you can use



     var allChecked = this.Controls.OfType<CheckBox>().All(x => x.Checked);


    but if there is possibility that the Enumerable yields no result then you need to use the code below. because All operator returns true for empty Enumerable



        bool allChecked = false;
    var checkBoxes = this.Controls.OfType<CheckBox>();
    if (checkBoxes.Any())
    allChecked = checkboxes.All(x => x.Checked);





    share|improve this answer


























    • I try but it always returning True value

      – Jonathan
      Jan 3 at 22:22











    • It returns true but this may be undesirable since no checkboxes is found in your this.Controls

      – Derviş Kayımbaşıoğlu
      Jan 3 at 22:52












    Your Answer






    StackExchange.ifUsing("editor", function () {
    StackExchange.using("externalEditor", function () {
    StackExchange.using("snippets", function () {
    StackExchange.snippets.init();
    });
    });
    }, "code-snippets");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "1"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54030437%2fcheck-if-all-checkboxes-of-form-are-checked%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    3 Answers
    3






    active

    oldest

    votes








    3 Answers
    3






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    1














    If you want to verify that all checkboxes on the form are checked, even those that belong to other container controls, you will have to iterate over each control's Controls collection (not just those belonging to the Form).



    One way to do this is to write a recursive method that takes in a container control (like the Form) and examines all the controls in it's collection. If any contained control is a Checkbox and it isn't checked, then return false. Otherwise, perform a recursive check on that control's Controls collection. If neither of these checks is false, then return true.



    For example:



    private static bool ContainedCheckboxesAreChecked(Control containerControl)
    {
    // For each control in the container
    foreach (Control control in containerControl.Controls)
    {
    // Return false if the control is a checkbox and it's not checked
    if (!(control as CheckBox)?.Checked ?? false) return false;

    // Do a recursive check on this control's Controls collection
    if (!ContainedCheckboxesAreChecked(control)) return false;
    }

    // If we got this far, return true
    return true;
    }


    Now, if you call this and pass in the main form as the container control, you will examine all controls on the form, including in all containers (even nested containers):



    bool allCheckBoxesAreChecked = ContainedCheckboxesAreChecked(this);





    share|improve this answer




























      1














      If you want to verify that all checkboxes on the form are checked, even those that belong to other container controls, you will have to iterate over each control's Controls collection (not just those belonging to the Form).



      One way to do this is to write a recursive method that takes in a container control (like the Form) and examines all the controls in it's collection. If any contained control is a Checkbox and it isn't checked, then return false. Otherwise, perform a recursive check on that control's Controls collection. If neither of these checks is false, then return true.



      For example:



      private static bool ContainedCheckboxesAreChecked(Control containerControl)
      {
      // For each control in the container
      foreach (Control control in containerControl.Controls)
      {
      // Return false if the control is a checkbox and it's not checked
      if (!(control as CheckBox)?.Checked ?? false) return false;

      // Do a recursive check on this control's Controls collection
      if (!ContainedCheckboxesAreChecked(control)) return false;
      }

      // If we got this far, return true
      return true;
      }


      Now, if you call this and pass in the main form as the container control, you will examine all controls on the form, including in all containers (even nested containers):



      bool allCheckBoxesAreChecked = ContainedCheckboxesAreChecked(this);





      share|improve this answer


























        1












        1








        1







        If you want to verify that all checkboxes on the form are checked, even those that belong to other container controls, you will have to iterate over each control's Controls collection (not just those belonging to the Form).



        One way to do this is to write a recursive method that takes in a container control (like the Form) and examines all the controls in it's collection. If any contained control is a Checkbox and it isn't checked, then return false. Otherwise, perform a recursive check on that control's Controls collection. If neither of these checks is false, then return true.



        For example:



        private static bool ContainedCheckboxesAreChecked(Control containerControl)
        {
        // For each control in the container
        foreach (Control control in containerControl.Controls)
        {
        // Return false if the control is a checkbox and it's not checked
        if (!(control as CheckBox)?.Checked ?? false) return false;

        // Do a recursive check on this control's Controls collection
        if (!ContainedCheckboxesAreChecked(control)) return false;
        }

        // If we got this far, return true
        return true;
        }


        Now, if you call this and pass in the main form as the container control, you will examine all controls on the form, including in all containers (even nested containers):



        bool allCheckBoxesAreChecked = ContainedCheckboxesAreChecked(this);





        share|improve this answer













        If you want to verify that all checkboxes on the form are checked, even those that belong to other container controls, you will have to iterate over each control's Controls collection (not just those belonging to the Form).



        One way to do this is to write a recursive method that takes in a container control (like the Form) and examines all the controls in it's collection. If any contained control is a Checkbox and it isn't checked, then return false. Otherwise, perform a recursive check on that control's Controls collection. If neither of these checks is false, then return true.



        For example:



        private static bool ContainedCheckboxesAreChecked(Control containerControl)
        {
        // For each control in the container
        foreach (Control control in containerControl.Controls)
        {
        // Return false if the control is a checkbox and it's not checked
        if (!(control as CheckBox)?.Checked ?? false) return false;

        // Do a recursive check on this control's Controls collection
        if (!ContainedCheckboxesAreChecked(control)) return false;
        }

        // If we got this far, return true
        return true;
        }


        Now, if you call this and pass in the main form as the container control, you will examine all controls on the form, including in all containers (even nested containers):



        bool allCheckBoxesAreChecked = ContainedCheckboxesAreChecked(this);






        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Jan 3 at 22:59









        Rufus LRufus L

        19.3k31732




        19.3k31732

























            5














            Simply as



            bool allChecked = this.Controls.OfType<CheckBox>().All(c => c.Checked);


            I am not sure what AllControls (in original unedited post) is. Because this property doesn't seem to be a standard one. This example uses the standard Controls collection present in any control container like the top level Form



            The problem is more complex if you have your CheckBoxes distributed inside different control containers. In that case you could use a recursive function that iteratively explore your controls and count how many of them are checked



            int result = RecursiveCheck(f.Controls);
            if(result > 0)
            Console.WriteLine("Something is not checked");

            int RecursiveCheck(Control.ControlCollection col)
            {
            int count = 0;
            foreach(Control c in col)
            {
            if (c.Controls.Count > 0)
            {
            count += c.Controls.OfType<CheckBox>().Count(x => !x.Checked);
            count += RecursiveCheck(c.Controls);
            }
            }
            return count;
            }





            share|improve this answer


























            • I try it but it always return True value

              – Jonathan
              Jan 3 at 22:23











            • Did you have your checkboxes inside some kind of container? (A panel or a groupbox) In this case you need to use the controls collection of the container

              – Steve
              Jan 3 at 22:26











            • Yes, they are inside a FlowLayoutPanel

              – Jonathan
              Jan 3 at 22:28











            • Then change this with the name of your FlowLayoutPanel

              – Steve
              Jan 3 at 22:29











            • Problem is they are inside FlowLayoutPanel, but inside it I have GroupBoxes, so each GroupBox have different checkboxes, I have list of groupBox so I iterate as: foreach (var g in groupBoxes) { }, but now, how can I know if all checkboxes are checked if they are in different Groupboxes?

              – Jonathan
              Jan 3 at 22:42
















            5














            Simply as



            bool allChecked = this.Controls.OfType<CheckBox>().All(c => c.Checked);


            I am not sure what AllControls (in original unedited post) is. Because this property doesn't seem to be a standard one. This example uses the standard Controls collection present in any control container like the top level Form



            The problem is more complex if you have your CheckBoxes distributed inside different control containers. In that case you could use a recursive function that iteratively explore your controls and count how many of them are checked



            int result = RecursiveCheck(f.Controls);
            if(result > 0)
            Console.WriteLine("Something is not checked");

            int RecursiveCheck(Control.ControlCollection col)
            {
            int count = 0;
            foreach(Control c in col)
            {
            if (c.Controls.Count > 0)
            {
            count += c.Controls.OfType<CheckBox>().Count(x => !x.Checked);
            count += RecursiveCheck(c.Controls);
            }
            }
            return count;
            }





            share|improve this answer


























            • I try it but it always return True value

              – Jonathan
              Jan 3 at 22:23











            • Did you have your checkboxes inside some kind of container? (A panel or a groupbox) In this case you need to use the controls collection of the container

              – Steve
              Jan 3 at 22:26











            • Yes, they are inside a FlowLayoutPanel

              – Jonathan
              Jan 3 at 22:28











            • Then change this with the name of your FlowLayoutPanel

              – Steve
              Jan 3 at 22:29











            • Problem is they are inside FlowLayoutPanel, but inside it I have GroupBoxes, so each GroupBox have different checkboxes, I have list of groupBox so I iterate as: foreach (var g in groupBoxes) { }, but now, how can I know if all checkboxes are checked if they are in different Groupboxes?

              – Jonathan
              Jan 3 at 22:42














            5












            5








            5







            Simply as



            bool allChecked = this.Controls.OfType<CheckBox>().All(c => c.Checked);


            I am not sure what AllControls (in original unedited post) is. Because this property doesn't seem to be a standard one. This example uses the standard Controls collection present in any control container like the top level Form



            The problem is more complex if you have your CheckBoxes distributed inside different control containers. In that case you could use a recursive function that iteratively explore your controls and count how many of them are checked



            int result = RecursiveCheck(f.Controls);
            if(result > 0)
            Console.WriteLine("Something is not checked");

            int RecursiveCheck(Control.ControlCollection col)
            {
            int count = 0;
            foreach(Control c in col)
            {
            if (c.Controls.Count > 0)
            {
            count += c.Controls.OfType<CheckBox>().Count(x => !x.Checked);
            count += RecursiveCheck(c.Controls);
            }
            }
            return count;
            }





            share|improve this answer















            Simply as



            bool allChecked = this.Controls.OfType<CheckBox>().All(c => c.Checked);


            I am not sure what AllControls (in original unedited post) is. Because this property doesn't seem to be a standard one. This example uses the standard Controls collection present in any control container like the top level Form



            The problem is more complex if you have your CheckBoxes distributed inside different control containers. In that case you could use a recursive function that iteratively explore your controls and count how many of them are checked



            int result = RecursiveCheck(f.Controls);
            if(result > 0)
            Console.WriteLine("Something is not checked");

            int RecursiveCheck(Control.ControlCollection col)
            {
            int count = 0;
            foreach(Control c in col)
            {
            if (c.Controls.Count > 0)
            {
            count += c.Controls.OfType<CheckBox>().Count(x => !x.Checked);
            count += RecursiveCheck(c.Controls);
            }
            }
            return count;
            }






            share|improve this answer














            share|improve this answer



            share|improve this answer








            edited Jan 3 at 22:53

























            answered Jan 3 at 22:08









            SteveSteve

            183k16160222




            183k16160222













            • I try it but it always return True value

              – Jonathan
              Jan 3 at 22:23











            • Did you have your checkboxes inside some kind of container? (A panel or a groupbox) In this case you need to use the controls collection of the container

              – Steve
              Jan 3 at 22:26











            • Yes, they are inside a FlowLayoutPanel

              – Jonathan
              Jan 3 at 22:28











            • Then change this with the name of your FlowLayoutPanel

              – Steve
              Jan 3 at 22:29











            • Problem is they are inside FlowLayoutPanel, but inside it I have GroupBoxes, so each GroupBox have different checkboxes, I have list of groupBox so I iterate as: foreach (var g in groupBoxes) { }, but now, how can I know if all checkboxes are checked if they are in different Groupboxes?

              – Jonathan
              Jan 3 at 22:42



















            • I try it but it always return True value

              – Jonathan
              Jan 3 at 22:23











            • Did you have your checkboxes inside some kind of container? (A panel or a groupbox) In this case you need to use the controls collection of the container

              – Steve
              Jan 3 at 22:26











            • Yes, they are inside a FlowLayoutPanel

              – Jonathan
              Jan 3 at 22:28











            • Then change this with the name of your FlowLayoutPanel

              – Steve
              Jan 3 at 22:29











            • Problem is they are inside FlowLayoutPanel, but inside it I have GroupBoxes, so each GroupBox have different checkboxes, I have list of groupBox so I iterate as: foreach (var g in groupBoxes) { }, but now, how can I know if all checkboxes are checked if they are in different Groupboxes?

              – Jonathan
              Jan 3 at 22:42

















            I try it but it always return True value

            – Jonathan
            Jan 3 at 22:23





            I try it but it always return True value

            – Jonathan
            Jan 3 at 22:23













            Did you have your checkboxes inside some kind of container? (A panel or a groupbox) In this case you need to use the controls collection of the container

            – Steve
            Jan 3 at 22:26





            Did you have your checkboxes inside some kind of container? (A panel or a groupbox) In this case you need to use the controls collection of the container

            – Steve
            Jan 3 at 22:26













            Yes, they are inside a FlowLayoutPanel

            – Jonathan
            Jan 3 at 22:28





            Yes, they are inside a FlowLayoutPanel

            – Jonathan
            Jan 3 at 22:28













            Then change this with the name of your FlowLayoutPanel

            – Steve
            Jan 3 at 22:29





            Then change this with the name of your FlowLayoutPanel

            – Steve
            Jan 3 at 22:29













            Problem is they are inside FlowLayoutPanel, but inside it I have GroupBoxes, so each GroupBox have different checkboxes, I have list of groupBox so I iterate as: foreach (var g in groupBoxes) { }, but now, how can I know if all checkboxes are checked if they are in different Groupboxes?

            – Jonathan
            Jan 3 at 22:42





            Problem is they are inside FlowLayoutPanel, but inside it I have GroupBoxes, so each GroupBox have different checkboxes, I have list of groupBox so I iterate as: foreach (var g in groupBoxes) { }, but now, how can I know if all checkboxes are checked if they are in different Groupboxes?

            – Jonathan
            Jan 3 at 22:42











            0














            if you are sure that Checkboxes available, you can use



             var allChecked = this.Controls.OfType<CheckBox>().All(x => x.Checked);


            but if there is possibility that the Enumerable yields no result then you need to use the code below. because All operator returns true for empty Enumerable



                bool allChecked = false;
            var checkBoxes = this.Controls.OfType<CheckBox>();
            if (checkBoxes.Any())
            allChecked = checkboxes.All(x => x.Checked);





            share|improve this answer


























            • I try but it always returning True value

              – Jonathan
              Jan 3 at 22:22











            • It returns true but this may be undesirable since no checkboxes is found in your this.Controls

              – Derviş Kayımbaşıoğlu
              Jan 3 at 22:52
















            0














            if you are sure that Checkboxes available, you can use



             var allChecked = this.Controls.OfType<CheckBox>().All(x => x.Checked);


            but if there is possibility that the Enumerable yields no result then you need to use the code below. because All operator returns true for empty Enumerable



                bool allChecked = false;
            var checkBoxes = this.Controls.OfType<CheckBox>();
            if (checkBoxes.Any())
            allChecked = checkboxes.All(x => x.Checked);





            share|improve this answer


























            • I try but it always returning True value

              – Jonathan
              Jan 3 at 22:22











            • It returns true but this may be undesirable since no checkboxes is found in your this.Controls

              – Derviş Kayımbaşıoğlu
              Jan 3 at 22:52














            0












            0








            0







            if you are sure that Checkboxes available, you can use



             var allChecked = this.Controls.OfType<CheckBox>().All(x => x.Checked);


            but if there is possibility that the Enumerable yields no result then you need to use the code below. because All operator returns true for empty Enumerable



                bool allChecked = false;
            var checkBoxes = this.Controls.OfType<CheckBox>();
            if (checkBoxes.Any())
            allChecked = checkboxes.All(x => x.Checked);





            share|improve this answer















            if you are sure that Checkboxes available, you can use



             var allChecked = this.Controls.OfType<CheckBox>().All(x => x.Checked);


            but if there is possibility that the Enumerable yields no result then you need to use the code below. because All operator returns true for empty Enumerable



                bool allChecked = false;
            var checkBoxes = this.Controls.OfType<CheckBox>();
            if (checkBoxes.Any())
            allChecked = checkboxes.All(x => x.Checked);






            share|improve this answer














            share|improve this answer



            share|improve this answer








            edited Jan 3 at 22:23

























            answered Jan 3 at 22:17









            Derviş KayımbaşıoğluDerviş Kayımbaşıoğlu

            15.7k22042




            15.7k22042













            • I try but it always returning True value

              – Jonathan
              Jan 3 at 22:22











            • It returns true but this may be undesirable since no checkboxes is found in your this.Controls

              – Derviş Kayımbaşıoğlu
              Jan 3 at 22:52



















            • I try but it always returning True value

              – Jonathan
              Jan 3 at 22:22











            • It returns true but this may be undesirable since no checkboxes is found in your this.Controls

              – Derviş Kayımbaşıoğlu
              Jan 3 at 22:52

















            I try but it always returning True value

            – Jonathan
            Jan 3 at 22:22





            I try but it always returning True value

            – Jonathan
            Jan 3 at 22:22













            It returns true but this may be undesirable since no checkboxes is found in your this.Controls

            – Derviş Kayımbaşıoğlu
            Jan 3 at 22:52





            It returns true but this may be undesirable since no checkboxes is found in your this.Controls

            – Derviş Kayımbaşıoğlu
            Jan 3 at 22:52


















            draft saved

            draft discarded




















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54030437%2fcheck-if-all-checkboxes-of-form-are-checked%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            KOX2TPnQTqc0maY,wyPEDLX6SWhs1BT,U Fjwe
            ME MLW54Y3D Ou94m3G0SBNy j,Jj2v9tGSS2 fh3YD4ovq O51Ie45p6U,pacHgqfT8hcu5we6f8,v2,pchXZPteg kSCK1dO

            Popular posts from this blog

            Monofisismo

            Angular Downloading a file using contenturl with Basic Authentication

            Olmecas