Bonjour à tous !![]()
J'ai un soucis concernant la mise à jour d'un contrôle utilisateur après un click. Je m'explique:
J'ai un contrôle utilisateur ("TextEdit1") que je mets à jours gràce à une de ses propriétés sur l'évènement page_load
La propriété "clubDefault" de la classe "registerclubs" sert à récupéré des données dans un fichier XML. Celà fonctionne bien au premier chargement de la page.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Protected sub Page_Load... Dim myRegister AsNew registerclubs() Dim myDefault(2) AsString myDefault = myRegister.clubDefault(IDClub, "coordonnees") TextBox1.Text = myDefault(0) TextEdit1.content = myDefault(1)
Sur un click, je mets à jour ces mêmes données dans le fichier xml:
La mise à jour s'effectue correctement dans le fichier.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 ProtectedSub Button1_Click(ByVal sender AsObject, ByVal e As System.EventArgs) Handles Button1.Click Dim myClubRegister AsNew registerclubs() 'récupération des valeurs Dim _summary AsString = TextBox1.Text Dim _content AsString = TextEdit1.content Dim _titre AsString = "coordonnees" If myClubRegister.saveDescrip(IDClub, _titre, _summary, _content) Then Label1.Text = "Vos modifications ont été enregistrées avec succès<br />" Label1.Visible = True Else Label1.Text = "Impossible d'enregistrer vos modifications.<br /> Label1.Visible = True EndIf EndSub
Mais lorsque la page se recharge après la mise à jours, la valeur de mon contrôle "TextEdit1" est l'ancienne valeur, bien que son actualisation soit effectuée depuis le fichier XML (correctement mis à jour lors du click) lors de l'évènement "Page_Load".![]()
Le problème ne vient pas du mécanisme de mise à jour, car lorsque je passe une chaîne de caractère simple à mon contrôle, la mise à jour s'effectue correctement ; et lorsque je ne mets pas en place de mise à jour au niveau du Page_load, le contrôle se vide après le click...
Voici le code de la mise à jour du fichier XML (qui fonctionne):
Bref, pour résumé, malgré la mise à jours du fichier XML sur le click du bouton, la mise à jour du contrôle sur l'évènement Page_Load prend en compte le fichier XML non modifié...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 'connexion au fichier xml Dim xmlDoc As XmlDocument = New XmlDocument() Dim myNavigator As XPathNavigator = xmlDoc.CreateNavigator() Dim myNode As XPathNodeIterator xmlDoc.Load(myXmlFile) 'parcourir le fichier xml et récupérer les valeurs myNode = myNavigator.Select("config/menu/item/title[@id='" & title & "']") myNode.MoveNext() 'se déplacer à la racine myNode.Current.MoveToNext() '<summary> myNode.Current.SetValue(summary) myNode.Current.MoveToNext() '<content> myNode.Current.SetValue(content) xmlDoc.Save(myXmlFile) saveDescrip = True
Est-ce normal ?
L'évènement "click" n'est-il pas sensé être exécuté en amont du "Page_Load" ?
Merci d'avance !!!![]()
Partager