Comment puis-je vérifier plusieurs zones de texte si la valeur est null ou vide sans un test unique pour chaque?

J'ai environ 20 champs de texte sur un formulaire que l'utilisateur peut remplir. Je veux inviter l'utilisateur à envisager l'enregistrement si ils ont rien tapé dans les zones de texte. Droit maintenant, le test car c'est vraiment long et désordonné:

if(string.IsNullOrEmpty(txtbxAfterPic.Text) || string.IsNullOrEmpty(txtbxBeforePic.Text) ||
            string.IsNullOrEmpty(splitContainer1.Panel2) ||...//many more tests

Est-il une manière que je pourrais utiliser quelque chose comme un Tableau de tout, où le tableau est fait de zones de texte et je le vérifier? Quels autres moyens pourrait être un moyen très pratique pour voir si des changements ont été effectués depuis le début du programme?

Une autre chose que je dois mentionner est qu'il existe une date time picker. Je ne sais pas si j'ai besoin de tester autour de ce que le datetimepicker ne sera jamais null ou vide.

EDIT:
J'ai incorporé les réponses dans mon programme, mais je n'arrive pas à le faire fonctionner correctement.
J'ai configuré les tests ci-dessous et garder le déclenchement de l'Application.Exit() de l'appel.

        //it starts out saying everything is empty
        bool allfieldsempty = true;

        foreach(Control c in this.Controls)
        {
            //checks if its a textbox, and if it is, is it null or empty
            if(this.Controls.OfType<TextBox>().Any(t => string.IsNullOrEmpty(t.Text)))
            {
                //this means soemthing was in a box
               allfieldsempty = false;
               break;
            }
        }

        if (allfieldsempty == false)
        {
            MessageBox.Show("Consider saving.");
        }
        else //this means nothings new in the form so we can close it
        {                
            Application.Exit();
        }

Pourquoi n'est-il pas trouver n'importe quel texte dans mes zones de texte basé sur le code ci-dessus?

OriginalL'auteur Fuzz Evans | 2012-01-05