Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Christian Wenz tarafından
AJAX Denetim Araç Seti'ndeki CascadingDropDown denetimi, DropDownList denetimini genişleterek bir DropDownList'teki değişikliklerin ilişkili değerleri başka bir DropDownList'e yüklemesini sağlar. Biraz kodla, veriler dinamik olarak yüklendikten sonra bir liste öğesinin önceden seçilmesi mümkündür.
Genel Bakış
AJAX Denetim Araç Seti'ndeki CascadingDropDown denetimi, DropDownList denetimini genişleterek bir DropDownList'teki değişikliklerin ilişkili değerleri başka bir DropDownList'e yüklemesini sağlar. (Örneğin, bir liste ABD eyaletlerinin listesini sağlar ve bir sonraki liste de bu eyaletteki büyük şehirlerle doldurulur.) Biraz kodla, veriler dinamik olarak yüklendikten sonra bir liste öğesinin önceden seçilmesi mümkündür.
Adımlar
ASP.NET AJAX ve Denetim Araç Seti'nin işlevselliğini etkinleştirmek için, ScriptManager
denetim sayfanın herhangi bir yerine (ancak öğesinin <form>
içine) yerleştirilmelidir:
<asp:ScriptManager ID="asm" runat="server" />
Ardından DropDownList denetimi gerekir:
<div>
Vendor: <asp:DropDownList ID="VendorsList" runat="server"/>
</div>
Bu liste için, web hizmeti URL'si ve yöntem bilgileri sağlayan bir CascadingDropDown genişleticisi eklenir:
<ajaxToolkit:CascadingDropDown ID="ccd1" runat="server"
ServicePath="CascadingDropdown2.cs.asmx" ServiceMethod="GetVendors"
TargetControlID="VendorsList" Category="Vendor" />
CascadingDropDown genişleticisi daha sonra aşağıdaki yöntem imzası ile bir web hizmetini zaman uyumsuz olarak çağırır:
public CascadingDropDownNameValue[] MethodNameHere(string knownCategoryValues, string category)
yöntemi CascadingDropDown değeri türünde bir dizi döndürür. Türün oluşturucu, önce liste girişinin başlık sonra da değerini (HTML value
özniteliği) bekler. Üçüncü bağımsız değişken true olarak ayarlanırsa, liste öğesi tarayıcıda otomatik olarak seçilir.
<%@ 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();
}
}
Sayfayı tarayıcıda yüklemek, açılan listeyi üç satıcıyla doldurur ve ikincisi önceden seçilir.
Liste otomatik olarak doldurulur ve önceden seçilir (Tam boyutlu görüntüyü görüntülemek için tıklayın)