[3.5] UpdatePanel et intialisation
Salut,
J'utilise UpdatePanel pour la première fois pour faire de l'ajax. J'ai un petit souci d'initialisation on va dire.
J'ai un RadioButtonList de trois boutons et un DropDownList dont le contenu varie selon la bouton coché précédemment. J'initialise le formulaire en cochant la premier bouton radio et donc, implicitement, en peuplant le DropdownList. Le problème est qu'en initialisant ce bouton radio, si je coche le deuxième bouton radio ou le troisième ça fonctionne, le contenu du DropDownList est remis à jour. Par contre, si je coche à nouveau le premier bouton radio rien ne se passe. J'actualise le contenudu DropDownList sur l'évènement RadioButtonList1e.SelectedIndexChanged, je suppose que pour l'application, quelque part, l'index sélectionné n'a pas changé!
Auriez-vous une explication à cela? Voici un bout de code pour illustré mes propos, mais il n'est pas fonctionnel puisqu'il y a un accès aux bases de données :
Code:
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 30 31 32 33 34 35
| <%@ Page Language="VB" AutoEventWireup="false" CodeFile="updatePanel.aspx.vb" Inherits="ajax_updatePanel" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Page sans titre</title>
</head>
<body>
<form id="form1" runat="server">
<asp:scriptmanager runat="server">
</asp:scriptmanager>
<div>
<asp:RadioButtonList
ID="RadioButtonList1"
runat="server"
AutoPostBack="true"
RepeatColumns="3"
RepeatDirection="Horizontal">
<asp:ListItem Value="0" Text="0" Selected="True"></asp:ListItem>
<asp:ListItem Value="1" Text="1"></asp:ListItem>
<asp:ListItem Value="2" Text="2"></asp:ListItem>
</asp:RadioButtonList>
<asp:UpdatePanel ID="cwUpdateTypeBien" runat="server">
<ContentTemplate>
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</ContentTemplate>
<triggers>
<asp:AsyncPostBackTrigger controlid="RadioButtonList1" eventname="SelectedIndexChanged" />
</triggers>
</asp:UpdatePanel>
</div>
</form>
</body>
</html> |
Code:
1 2 3 4 5 6 7
| Partial Class ajax_updatePanel
Inherits System.Web.UI.Page
Protected Sub RadioButtonList1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles RadioButtonList1.SelectedIndexChanged
Label1.Text = sender.selectedvalue
End Sub
End Class |
Une ligne est commentée dans ce code. Si elle reste commentée ça fonctionne bien, mais ce n'est pas le comportement que je recherche. Si je la décommente, j'obtiens le résultat qui me pose problème.
Si vous avez besoin de plus d'informations, n'hésitez pas à me relancer.
Merci par avance.