Bonjour,

J'ai une datalist qui contient des messages et un imagebutton qui permet d'afficher le contenu du message.

En gros j'ai affecté un commandArgument et commandName où je rend visible ou non le contenu, je mets à jour la base de donnée et un élément dans le master... J'utilise un scriptManager et UpdatePanel pour que tout se fasse en temps réel et je pense que c'est le problème.

Après je fais d'autres action du style changement du tooltip (afficher/masquer) ...

Mon problème c'est que dans ma page la datalist est dans un tableau avec scroll, et quand je clique sur un message du bas de la liste cette dernière remontre tout en haut... Je pense que le fait que je fasse une modification dans la base de donnée et donc un traitement côté server, cela recharge la page implicitement... je sais pas si vous allez me comprendre lol

Est-il possible que la liste ne remonte pas ? Comment faire ??

Merci pour vos réponses.

Code coté aspx
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
                            <ItemTemplate>
                                <tr style="background-color:#FFFFFF;height:40px;" id="ligneTest" runat="server">
                                    <td valign="middle" style="width:50px;padding:5px 10px;">
                                        <asp:ImageButton runat="server" ID ="HLByVoirMessage" ToolTip="Afficher le message" ImageUrl="~/include/images/iconeMiniOeil.gif" CommandName="VOIR_MSG" CommandArgument='<%#CType(Container.DataItem, Messagerie).Message%>'/>&nbsp;
                                        <asp:ImageButton ID="ImageBtSupprimerMessage" runat="server"  ImageUrl="~/include/images/iconeCorbeille.gif" ToolTip="Supprimer le message" OnClientClick="javascript: if(confirm('Voulez-vous vraiment supprimer ce message ? ') == true) return true; else return false;"  CommandName="SUPPRIMER_MSG" CommandArgument='<%#CType(Container.DataItem, Messagerie).Message%>' />
                                        <textarea id="HiddenFDMessage" runat="server" visible="false"><%# DataBinder.Eval(Container.DataItem, "contenuMessage") %></textarea>
                                   </td>
                                    <td align="center" style="width:200px;padding:5px 10px;">
                                        <asp:Label ID="labelDateHeure" runat="server"></asp:Label>
                                    </td>
                                    <td style="padding: 0px 0px 0px 50px; width: 400px; text-align:left;"> 
                                        <asp:LinkButton ID="lbAfficheContenu" runat="server" CommandName="VOIR_MSG" CommandArgument='<%#CType(Container.DataItem, Messagerie).Message%>'><asp:Label ID="labelResumeMessage" runat="server"></asp:Label></asp:LinkButton>
                                    </td>
                               </tr>
                               <tr id="ligneAfficheContenu" runat="server" visible="false">
                                    <td colspan="3" class="tdMessagerie">
                                        <table class="tableAfficheContenu">
                                            <tr>
                                                <td><asp:Label ID="LabelMessage" runat="server" Text="" ></asp:Label></td>
                                            </tr>
                                        </table>
                                    </td>  
                               </tr>
                            </ItemTemplate>
coté aspx.vb
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
 
Dim HiddenFDMessage As HtmlTextArea = CType(e.Item.FindControl("HiddenFDMessage"), HtmlTextArea)
            Dim LabelMessage As Label = CType(e.Item.FindControl("LabelMessage"), Label)
            Dim HLByVoirMessage As ImageButton = CType(e.Item.FindControl("HLByVoirMessage"), ImageButton)
            If ligneAfficheContenu.Visible = False Then
                ligneAfficheContenu.Visible = True
                labelDateHeure.Font.Bold = False
                lbAfficheContenu.Font.Bold = False
                HLByVoirMessage.ToolTip = "Masquer le message"
                LabelMessage.Text = HiddenFDMessage.Value
            Else
                HLByVoirMessage.ToolTip = "Afficher le message"
                ligneAfficheContenu.Visible = False
            End If
            ' 1) modif de l'état du message
            msgRetour = majSuppressionMessage(numeroMessage, IDduSite, IDutilisateur, "L")
            If msgRetour <> "" Then
                labelErreurMsg.Text = msgRetour
            End If
            ' 2) mise à jour du bouton dans le master
            Master.mettreAjourMessage = retourneNbMessagesNonLus(IDduSite, IDutilisateur)