Bagikan melalui


Prasetel Entri Daftar dengan CascadingDropDown (C#)

oleh Christian Wenz

Unduh PDF

Kontrol CascadingDropDown di Toolkit Kontrol AJAX memperluas kontrol DropDownList sehingga perubahan dalam satu DropDownList memuat nilai terkait di DropDownList lain. Dengan sedikit kode ada kemungkinan bahwa elemen daftar dipilih sebelumnya setelah data dimuat secara dinamis.

Gambaran Umum

Kontrol CascadingDropDown di Toolkit Kontrol AJAX memperluas kontrol DropDownList sehingga perubahan dalam satu DropDownList memuat nilai terkait di DropDownList lain. (Misalnya, satu daftar menyediakan daftar status AS, dan daftar berikutnya kemudian diisi dengan kota-kota besar di negara bagian tersebut.) Dengan sedikit kode ada kemungkinan bahwa elemen daftar dipilih sebelumnya setelah data dimuat secara dinamis.

Langkah-langkah

Untuk mengaktifkan fungsionalitas ASP.NET AJAX dan Control Toolkit, ScriptManager kontrol harus diletakkan di mana saja di halaman (tetapi dalam <form> elemen ):

<asp:ScriptManager ID="asm" runat="server" />

Kemudian, kontrol DropDownList diperlukan:

<div>
 Vendor: <asp:DropDownList ID="VendorsList" runat="server"/>
</div>

Untuk daftar ini, extender CascadingDropDown ditambahkan, menyediakan URL layanan web dan informasi metode:

<ajaxToolkit:CascadingDropDown ID="ccd1" runat="server"
 ServicePath="CascadingDropdown2.cs.asmx" ServiceMethod="GetVendors"
 TargetControlID="VendorsList" Category="Vendor" />

Extender CascadingDropDown kemudian secara asinkron memanggil layanan web dengan tanda tangan metode berikut:

public CascadingDropDownNameValue[] MethodNameHere(string knownCategoryValues, string category)

Metode mengembalikan array jenis nilai CascadingDropDown. Konstruktor jenis mengharapkan terlebih dahulu caption entri daftar dan kemudian nilai (atribut HTMLvalue). Jika argumen ketiga diatur ke true, elemen daftar secara otomatis dipilih di browser.

<%@ 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();
 }
}

Memuat halaman di browser akan mengisi daftar dropdown dengan tiga vendor, yang kedua telah dipilih sebelumnya.

Daftar diisi dan dipilih sebelumnya secara otomatis

Daftar diisi dan dipilih sebelumnya secara otomatis (Klik untuk melihat gambar ukuran penuh)