Un détail en passant : il me paraît beaucoup plus fiable, pour savoir si un contrôle est un textbox, une combo ou autre, de vérifier le type de l'objet plutôt que faire des suppositions sur son nom.
Donc remplacer
if (ctrl.Name.StartsWith("txt_") || ctrl.Name.StartsWith("cmb_"))
par
if (ctrl is TextBox || ctrl is ComboBox)
Il ne me semble pas très pérenne de compter sur le fait que le designer de visual donne systématiquement à la propriété Name d'un contrôle le nom de la référence de ce contrôle. C'est pas de la réflexion mais presque, et faire du code qui ne résiste pas au simple changement du nom d'une variable est dangereux.
Voilà voilà
Partager