private void CleanForm()
{
foreach (var c in this.Controls)
{
if (c is TextBox)
{
((TextBox)c).Text = String.Empty;
}
}
}
Powyższa metoda nie działa, a elementy sterujące nie są wyczyszczone. Kompiluje się dobrze, ale nic nie robi.Jak wyczyścić tekst wszystkich pól tekstowych w formularzu?
Wszelkie pomysły?
Na marginesie, możesz chcieć określić 'TextBoxBase' zamiast' TextBox'; to automatycznie uwzględni także wieloliniowe pola tekstowe, bogate pola tekstowe itp. – Timwi
Ponadto nie trzeba rzutować na "TextBox". – SLaks
Ten kod działa tak, jak jest, ale upewnij się, że w przypadku każdej instrukcji (this.Controls) jest faktycznym formantem, który ma pola tekstowe, na przykład, jeśli masz formularz, z tableLayoutPanel, a pola tekstowe są wszystko w tableLayoutPanel, foreach (var c w this.Controls) nie zadziała, musi to być foreach (var c w tableLayoutPanel1.Controls). – Hammy