Présélectionner une valeur par défaut dans une liste avec un CascadingDropDown
Date de publication : 08 mai 2009
Par
Christian Wenz
Pascal ROZE (Traducteur) (Page perso) (Blog)
Le contrôle CascadingDropDown de l'AJAX Control Toolkit étend un contrôle DropDownList de façon à ce que des changements
dans une DropDownList chargent des données associées dans une autre DropDownList. Avec un minimum de code, il est possible
de présélectionner un élément une fois les données chargées.
Traduction
Vue générale
Etapes
Traduction
Vue générale
Le contrôle CascadingDropDown de l'AJAX Control Toolkit étend un contrôle DropDownList de façon à ce que des changements
dans une DropDownList chargent des données associées dans une autre DropDownList (Par exemple, une liste fournit la liste
des états US et la liste suivante est remplie avec les principales villes de cet état). Avec un minimum de code, il est possible
de présélectionner un élément une fois les données chargées.
Etapes
Dans le but d'activer les fonctionnalités d'ASP.NET AJAX et du Control Toolkit, le contrôle ScriptManager doit être
ajouté n'importe où dans la page (mais à l'intérieur de l'élément <form>):
<asp:ScriptManager ID="asm" runat="server" />
|
Ensuite, un contrôle DropDownList est nécessaire:
<div>
Vendor: <asp:DropDownList ID="VendorsList" runat="server"/>
</div>
|
Pour cette liste, un extendeur CascadingDropDown est ajouté, fournissant l'URL d'un web service et le nom d'une web
méthode:
<ajaxToolkit:CascadingDropDown ID="ccd1" runat="server"
ServicePath="CascadingDropdown2.cs.asmx"
ServiceMethod="GetVendors"
TargetControlID="VendorsList" Category="Vendor" />
|
L'extendeur CascadingDropDown fait un appel asynchrone à une web méthode dont la signature est:
public CascadingDropDownNameValue[] MethodNameHere(string knownCategoryValues, string category)
|
La méthode retourne un tableau de type CascadingDropDown. Le premier paramètre du constructeur de CascadingDropDownList est le texte de
l'entrée de la liste, le second est sa valeur, (attribut valeur de l'élément HTML <option value="VALUE">NAME<option>).
Si le troisième élément est défini à true, l'élément de la liste est automatiquement sélectionné dans le navigateur.
<%@ WebService Language="C#" Class="CascadingDropdown2" %>
using System.Web.Script.Services;
using AjaxControlToolkit;
using System;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Collections.Generic;
[ScriptService]
public class CascadingDropdown2 : System.Web.Services.WebService
{
[WebMethod]
public CascadingDropDownNameValue[] GetVendors(string knownCategoryValues, string category)
{
List<CascadingDropDownNameValue> l = new List<CascadingDropDownNameValue>();
l.Add(new CascadingDropDownNameValue("International", "1"));
l.Add(new CascadingDropDownNameValue("Electronic Bike Repairs & Supplies", "2", true));
l.Add(new CascadingDropDownNameValue("Premier Sport, Inc.", "3"));
return l.ToArray();
}
}
|
Charger la page dans le navigateur remplira la liste déroulante avec trois entrées, la seconde étant présélectionnée.

La liste est remplie et automatiquement présélectionnée


Copyright © 2009 Equipe Dotnet. Aucune reproduction, même partielle, ne peut être faite
de ce site et de l'ensemble de son contenu : textes, documents, images, etc.
sans l'autorisation expresse de l'auteur.
Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 €
de dommages et intérêts. Droits de diffusion permanents accordés à Developpez LLC.
Cette page est déposée.