Bonjour,

Je suis débutant en ASP.net et malgrès avoir lu quelques bouquins ainsi que consulté votre forum à la recherche d'une solution je me trouve bloqué depuis plus de 24h sur ce problème.

Je pensais avoir saisie comment marche les evenements, mais je dois me resoudre à admettre que j'ai du passer à côté de quelques chose.

En gros voilà mon problème. Je veux faire un moteur de template pour avoir un site dynamique en ASP.net, donc pour cela j'ai procédé à des tests de faisabilité en essayant de transmettre des variables banales d'une page à l'autre.
Cela fonctionne très bien pour les "Request.QueryString("mavariable")" mais beaucoup moins bien dès que j'essaye de les faire passer en postback.

Mon site est articulé de la manière suivante :
J'ai une master page qui contient 2 contentplaceholder et 2 pages pour l'instant (page de login et page index).

Je vais vous montrer le code de ma page index.

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
17
18
19
20
21
22
23
24
25
26
27
28
29
<%@ Page Language="VB" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="index.aspx.vb" Inherits="_Default" title="Untitled Page" %>
 
<asp:Content ID="lesMenus" ContentPlaceHolderID="CPH_menu" Runat="Server">
        <div id="topMenu" style="right: 0px; top: 59px">
            <ul>
                <li><a id="m1" href="<%= Request.ApplicationPath %>/index.aspx?pages=employe">Employé</a>
                </li><li><a id="m2" href="<%= Request.ApplicationPath %>/index.aspx?pages=compta">COMPTA</a></li><li><a id="m3" href="<%= Request.ApplicationPath %>/index.aspx?pages=responsable">Responsable de service</a></li></ul>
        </div>
 
        <div id="miniMenu">
            <ul>
                <li>Utilisateur  : <%= Session("login") %> | </li>
                <li> <%= Now().ToString() %> | </li>
                <li><asp:LoginStatus ID="LoginStatus1" runat="server" /> </li>
            </ul>   
        </div>
</asp:Content>
 
<asp:Content ID="body" ContentPlaceHolderID="CPH_body" Runat="Server">      
        <div id="pbody">
            <asp:ListBox ID="ListBox1" runat="server" Width="372px" AutoPostBack="True"></asp:ListBox><br />
            <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label><br />
            <asp:Button ID="Button1" runat="server" Text="Button" /><br/>
                BODY BODY BODY BODY BODY BODY BODY BODY <br/>
                BODY BODY BODY BODY BODY BODY BODY BODY <br/>
                BODY BODY BODY BODY BODY BODY BODY BODY <br/>     
        </div>
 
</asp:Content>

Je vais également vous montrer le code vb de cette même page :

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
Partial Class _Default
    Inherits System.Web.UI.Page
 
    Public i As Integer = 0
 
    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Label1.Text = Request.QueryString("pages") & " " & i
        ListBox1.Items.Add(Me.i)
        Me.i = Me.i + 1
    End Sub
 
    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        Response.Redirect(Request.Url.PathAndQuery)
        Me.i = Me.i + 1
    End Sub
End Class
Le problème c'est que ma variable "i" reste invariablement à 0 et que ma listbox ne se remplie qu'une seule fois alors quelle devrait grandir à chaque fois que je recharge la page.
J'ai l'impression que mon evenemenet page_load ne fonctionne qu'une seule fois...

Est ce que vous auriez l'obligeance d'éclairer ma lanterne s'il vous plait ?
En vous remerciant d'avance...
Cordialement
Rémi