Fonction générique dans des formulaires WEB ASP.net
1 réponse
Kalbo
Bonjour,
J'aurai voulu savoir s'il était possible de créer une fonction générique en
C# qui permet d'afficher ou cacher des champs d'un formulaire WEB selon la
valeur d'une listbox? Si oui comment dois-je coder cette fonction?
Je voudrais éviter d'avoir une fonction de traitement pour chaque listbox.
Actuellement, j'utilise des composants ASP.net avec l'attribut
runat="server" et je pense par la suite utiliser l'attribut autopostback pour
déporter mes traitements sur le serveur.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Franck Quintana
La propriété Controls te permet d'énumérer la collection de controles de toute la page. A partir de la il te suffit de faire une fonction récursive car un contrôle peut contenir d'autres contrôles. Une fois l'énumération faite il te suffit de dire par exemple : if (typeOf(MonControle) is TextBox) MonControle.Visible = MaListBox.SelectedValue != '';
Ensuite il faut trouver l'évènement ou il faut faire çà. Je pense à l'évènement PreRender car il intervient après CreateChildControls() et après DataBind() et étant donné que tu dois vérifier la valeur d'une listbox celui ci me semble approprié.
La propriété Controls te permet d'énumérer la collection de controles de
toute la page.
A partir de la il te suffit de faire une fonction récursive car un
contrôle peut contenir d'autres contrôles.
Une fois l'énumération faite il te suffit de dire par exemple :
if (typeOf(MonControle) is TextBox)
MonControle.Visible = MaListBox.SelectedValue != '';
Ensuite il faut trouver l'évènement ou il faut faire çà.
Je pense à l'évènement PreRender car il intervient après
CreateChildControls() et après DataBind() et étant donné que tu dois
vérifier la valeur d'une listbox celui ci me semble approprié.
La propriété Controls te permet d'énumérer la collection de controles de toute la page. A partir de la il te suffit de faire une fonction récursive car un contrôle peut contenir d'autres contrôles. Une fois l'énumération faite il te suffit de dire par exemple : if (typeOf(MonControle) is TextBox) MonControle.Visible = MaListBox.SelectedValue != '';
Ensuite il faut trouver l'évènement ou il faut faire çà. Je pense à l'évènement PreRender car il intervient après CreateChildControls() et après DataBind() et étant donné que tu dois vérifier la valeur d'une listbox celui ci me semble approprié.