Bonjour.
J'ai un souci avec un contrôle ascx lors d'un postback dans une page web qui fonctionne la première fois mais pas lors d'un postback.

Je vous explique.
J'ai une page ASCX qui contient un contrôle (TELERIK ROTATOR).
Dans mon code HTML, j'ai ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
<asp:Panel ID="PanelRIGHTROTATORINT" runat="server" Visible="true" CssClass="BlocMainIntRight">
<telerik:radrotator runat="server" id="radrotator1" Width="242px" Height="544px"
      ItemWidth="242px" ItemHeight="136px"
      ScrollDuration="3200"
      FrameDuration="2400"
      ScrollDirection="Up" ViewStateMode="Enabled" EnableEmbeddedSkins="true" EnableTheming="true" 
      AppendDataBoundItems="True" Skin="Black">
        <ItemTemplate>
		      <img id="imageRotator" alt="" src="photos-one-pieces-auto/bandeaux-pubs/<%#Container.DataItem("ProdPhoto1")%>" width="240px" height="130px" />
        </ItemTemplate>
</telerik:radrotator>
</asp:Panel>
Dans le code behind (en VB.NET), je charge seulement le résultat d'une requête SQL dans mon rotator :

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
 
 
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
                Dim strSqlPubRotator As String = "select * from MATABLE WHERE ((Active=1) AND ((ProdPhoto1<>'') AND (ProdPhoto1 is not null)))"
                strSqlPubRotator = strSqlPubRotator & " ORDER BY Classement DESC "
                Dim db As DAL_SQL = New DAL_SQL
                Dim DT As DataSet = db.ExecuteDataSet(strSqlPubRotator)
                If DT.Tables(0).Rows.Count > 0 Then
                    PanelRIGHTROTATORINT.Visible = True
                    radrotator1.DataSource = DT
                    radrotator1.DataBind()
                Else
                    PanelRIGHTROTATORINT.Visible = False
                End If
                DT = Nothing
                db = Nothing
End Sub
Ce ROTATOR est codé dans un fichier .ASCX à part donc, et qui est ensuite inclus dans plusieurs pages de mon site.
Jusque là, tout fonctionne parfaitement.



Mais mon problème est le suivant. Quand j'appelle mes pages avec ce contrôle, il marche bien.
Mais, j'ai une fonctionnalité de recherche sur le site qui me pose problème => Quand je rempli un champ de saisie sur une page et qu'après validation j'arrive sur la page résultat, le rotator s'affiche bien. Mais une fois sur cette page, j'ai à nouveau un champs de saisie qui permet de relancer une recherche en saisissant directement sur cette page de résultat une nouvelle valeur à rechercher. Et c'est là, après validation depuis cette page, que le rotator ne fonctionne plus. Le code en lui-même marche, mais la page asx du rotator ne me reconnait plus dans sa partie HTML le code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
<%#Container.DataItem("ProdPhoto1")%>
je ne sais pas si je suis clair ....


Pour valider le formulaire, j'ai un bouton comme ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
<asp:ImageButton ID="BtImgValider" runat="server" 
              PostBackUrl="~/Resultat-Recherche.aspx" ValidationGroup="BlocNewRech"
           ImageUrl="~/photos/commun/Btn-Rechercher_r1_c1.jpg" 
              title="Lancer une recherche..">
           </asp:ImageButton>
J'ai essayé de mettre un "if not ispostback" mais sans succès .... je me demande comment je peux arranger cela.

Merci pour toute piste qui pourrait m'aiguiller dans la résolution de ce problème...
Merci.