Ich habe eine Formularanwendung in VB.NET.
Ich habe viele Textfelder in einem Formular (etwa 20). Gibt es trotzdem, sie alle auf einmal zu überprüfen, um zu sehen, ob sie leer sind, statt eine massive Codezeile zu schreiben, um jeden einzeln zu prüfen, wie
%Vor%Das scheint so weit weg zu sein?
Sie könnten auch LINQ verwenden:
%Vor%Die interessante Methode ist Enumerable.OfType
Das Gleiche gilt für die Abfragesyntax (in VB.NET besser lesbar):
%Vor%Ich würde empfehlen, das Validating-Ereignis der TextBox-Steuerelemente mit einem Fehlerprovider-Steuerelement zu verwenden (fügen Sie einfach eine zu Ihrem Formular hinzu):
%Vor%Dann können Sie einfach anrufen:
%Vor%Das Schöne daran ist, dass der Benutzer darüber informiert wird, welche Textbox fehlt und benötigt wird. Dies funktioniert mit anderen Steuerelementen als Textfeldern, sodass Sie eine vollständigere Lösung bereitstellen können. Wenn Sie an einen späteren Punkt kommen, an dem ein oder zwei Textfelder keine Werte haben müssen, validieren Sie diese einfach nicht, anstatt spezielle Fälle in Ihre Schleifen einzufügen.
Schließlich, wenn Sie nicht alle Steuerelemente eingeben möchten, können Sie dies in Form laden:
%Vor% Ein sehr vereinfachter Ansatz wäre, alle TextBox
-Steuerelemente in einer Sequenz zu sammeln, indem Sie die Enumerable.OfType LINQ-Methode und dann durchlaufen Sie es in einem für jede Schleife:
Wenn das TextBox
-Feld leer ist, erscheint im Meldungsfeld "Complete Entry!".
Ich habe das gefunden, vielleicht können Sie es ändern, um zu überprüfen, ob alle Textfelder klar sind und nicht, was es gerade tut, was nur alle Textfelder löscht
%Vor%