1°) comment dans un "datalist" avec un "DataSourceID" basé sur une Procédure stockée faire apparaître le label, ici nommé "LabelValeurEcran" avec par exemple le texte "aucun" si la procédure stockée ne ramène aucun enregistrement.
En effet dans ce cas la partie <HeaderTemplate> du datalist apparait bien mais pas la partie ce qui est normal puisqu'il n'y a pas d'enregistrement.
J'ai essayé dans le codebehind de traiter les évènements "ItemDataBound", "itemCreated","init", "load" et "prerender" du "datalist" mais je ne peux atteindre ce label quand la procédure stockée ne renvoie aucun enregistrement, voici le code :
Dim etat As Label = CType(e.Item.FindControl("Ecran"), Label)
If etat IsNot Nothing Then
etat.Text = "aucun"
End If
mais ce code fonctionne très bien dès qu'il y a au moins un enregistrement de retourné par la procédure stockée.
2°) n'y arrivant pas j'ai ajouté dans ma procédure stockée un paramètres @acces qui me retourne le chiffre 0 s'il n'y a pas de lignes de retournées qui correspond ici à
""
mais je ne sais ni récupérer cette info ni où l'a traiter pour faire apparaître le label, ici nommé "LabelValeurEcran" avec par exemple le texte "aucun".
D'avance merci de vos réponses.
A voir également:
Datalist avec pour source une procédure stockée ne renvoyant pas d'enregistremen
tout à fait ce qu'il me fallait, et pour ma culture personnelle savez-vous comment récupérer la valeur du paramètre retournée par la procédure stockée ?
la procédure stockée peut à la fois renvoyer les résultats d'une requête ET un paramètre, déjà dès SQL 2000 on pouvait le faire;
j'ai déjà déclaré le paramètre (voir mon code lors du premier message), ce que je ne sais pas faire c'est comment récupérer le contenu de ce paramètre "acces" en ASP.NET VB