Bonjour,
Voila mon problème de newbie en dotnet. Je voudrais créer un formulaire, dans lequel on peut remplir des textbox, avec un bouton de validation à la fin.
J'aimerai que, si l'un des textbox est mal renseigné, la page du formulaire se recharge en modifiant l'apparence de ce textbox (lui mettre un fond rouge, par exemple) pour qu'on voie que c'est ce textbox-ci qui pose problème. (bref, comme dans tout bon formulaire web)
Bien entendu, je veux faire ca proprement !!
Alors, j'ai créé un theme, avec un fichier skin qui initialise un theme particulier pour les textbox invalides:
<asp:textbox runat="server" SkinID="tb_invalid" BackColor="red" />
Dans ma page ASP, ce textbox n'est lié a aucun SkinID par défaut. Mais, lors d'une validation (causée, par exemple, par un bouton "Update" d'un FormView), je voudrais que ce textbox puisse prendre l'aspect 'tb_invalid' lorsque l'utilisateur a rentré une mauvaise valeur dedans.
Alors j'ai fait mon barbare, et j'ai écrit:
monTextbox.SkinID = "tb_invalid";
dans le code (du bouton)
Et la, j'ai le message d'erreur (que je retrouve partout dans mes recherches sans pouvoir trouver de solution valable), qui me dit que le SkinID ne peut etre initialisé que dans le PreLoad...
Ce qui n'est pas tres pratique... car si je met cette ligne de code ici, à chaque preload je vais devoir vérifier si le skinID de la textbox a bien besoin d'etre modifié ou non.
En plus, j'aimerai pouvoir passer la tb en parametre afin de pouvoir appliquer ceci a la textbox que je veux. Bref, je trouve que ce systeme de page PreLoad est très limité.
Savez-vous comment faire ce que je souhaite faire ? (ce qui ne doit pourtant pas etre si dur que ca à faire vu qu'on voit ca partout sur le web ^^ )
Partager