J'ai le balisage suivant:ASP: ListBox - aucun article sélectionné en postback?
<tr>
<td valign="top" align="left">
<asp:Label ID="Label1" runat="server" Text="Available Roles" />
<br />
<asp:ListBox ID="availableRolesListBox" runat="server" SelectionMode="Multiple" Width="100px" Rows="10" AutoPostBack="false" />
</td>
<td valign="top" align="center">
<br />
<asp:Button ID="addToRole" runat="server" Text="--->" OnClick="addToRole_Click" />
<br />
<asp:Button ID="removeFromRole" runat="server" Text="<---" OnClick="removeFromRole_Click" />
</td>
<td valign="top" align="left">
<asp:Label ID="Label2" runat="server" Text="User In Roles" />
<br />
<asp:ListBox ID="userInRolesListBox" runat="server" SelectionMode="Multiple" Width="100px" Rows="10" AutoPostBack="false" />
</td>
</tr>
Et ce qui suit dans le code-behind:
protected void addToRole_Click(object sender, EventArgs e)
{
// Add user to the selected role...
foreach (ListItem myItem in availableRolesListBox.Items)
{
if (myItem.Selected)
{
Roles.AddUserToRole(userListBox.SelectedItem.Value, myItem.Text);
}
}
Refresh();
}
Lorsque je fais un pas dans le code-behind absolument aucun élément sont sélectionnés! Qu'est-ce que j'oublie?
Ah merde! Vous l'avez sur la tête. Ma méthode Refresh() (repopule la plupart des contrôles) était en dehors de mon! Page.PostBack. Merci! –
Ne vous sentez pas mal, c'est une erreur facile à faire! – RichardOD
Ouais - trop facile en effet! Doh! – DilbertDave