Wie kann ich mehrere Textfelder, wenn null oder leer ist, ohne einen einzigartigen test für jeden?

Habe ich über 20 text-Felder in einem Formular, die ein Benutzer ausfüllen können. Ich möchte der Benutzer aufgefordert, Sie zu speichern, wenn Sie alle Angaben in die Textfelder ein. Jetzt der test für, die ist wirklich lang und unübersichtlich:

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

Gibt es eine Möglichkeit, die ich verwenden könnte, so etwas wie ein Array von, wo das array ist aus den text-Boxen und ich check es auch so? Welche anderen Möglichkeiten könnte eine sehr bequeme Art und Weise, in denen zu sehen, wenn änderungen vorgenommen wurden, seit das Programm begonnen?

Eine andere Sache, die ich erwähnen sollte ist, dass es eine Datum-Zeit-picker. Ich weiß nicht, ob ich testen müssen, um, wie der datetimepicker wird nie null oder leer ist.

BEARBEITEN:
Ich bezog die Antworten in mein Programm, aber ich kann nicht scheinen, um es richtig funktioniert.
Ich die tests als unten und halten die Auslösung der Anwendung.Exit () - Aufruf.

        //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();
        }

Warum ist es nicht der Suche nach einem text in meinem text-Boxen basierend auf dem code von oben?

InformationsquelleAutor Fuzz Evans | 2012-01-05
Schreibe einen Kommentar