salut les gens.

Le titre n'est pas super clair, mais c'est que je ne saisis pas le problème.

J'ai créée une page aspx alimentant une listbox depuis une table située dans une bdd sql server.
J'ai également des boutons permettant de modifier/supprimer/ajouter les enregistrements dans la bdd en fonction de la ligne sélectionnée dans la listbox.
Si je clique sur ajouter...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
    Protected Sub BtnAdd_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles BtnAdd.Click
        Response.Redirect("ajout.aspx")
    End Sub
Il va s'afficher une page avec plusieurs textbox afin de saisir les valeurs des différents champs de la table et un bouton pour valider la saisie et insérer les données dans la table.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
<asp:TextBox ID="TbPDT_EAN" runat="server" />
<asp:Button ID="BtnValider" runat="server" Text="Valider" />
En cliquand sur le bouton valider, je lance un appel vers une classe qui fera le travaille nécessaire (paramètrage des objets SQL et appel à la procédure stockée).
Pas de problème de ce coté là.

Par contre en choisissant de modifer un enregistrement existant, si.
Tout se déroule de la même façon, je clique sur le bouton modifier (j'ajoute dans l'url la valeur de la clé pour interroger la base sur l'enregistrement à modifier) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
    Protected Sub BtnUpdate_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles BtnUpdate.Click
        Response.Redirect("modif.aspx?ean=" + CType(Page.Master.FindControl("LBProduct"), ListBox).SelectedValue.ToString())
    End Sub
S'affiche alors une page identique à celle d'un ajout, avec les textbox permettant de saisir les données :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
<asp:TextBox ID="TbPDT_EAN" runat="server" />
<asp:Button ID="BtnValider" runat="server" Text="Valider" />
Si ce n'est que ces texbox seront remplies dans le page_load avec les données de l'enregistrement à modifier :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
TbPDT_EAN.Text = CType(System.Web.HttpContext.Current.Session("PRODUCT"), ClassProduct).Product.Rows(0).Item("PDT_EAN").ToString()
L'utilisateur peut alors modifier la valeur des textbox puis cliquer sur valider pour enregistrer les changements.
Seulement ici j'ai un problème. Au moment de cliquer pour valider les changements, la valeur des textbox prise en compte sera celle initialisée dans le page_load et non celle saisie par l'utilisateur.

Pourquoi est-ce que je perds les valeurs saisies par l'utilisateur ?