CascadingDropDown我个人感觉有几个规则:
1.    需要配合xml
2.    需要配合两个方法:CascadingDropDown.ParseKnownCategoryValuesString和CascadingDropDown.QuerySimpleCascadingDropDownDocument
3.    似乎需要配合WebService
 
希望有人指出错误之处。
 
联动选择的下拉框最多的应用我想应该是地区的选择吧,估计每个web程序员都碰到过,下面来看atlas的解决方案:
 
前端代码Default.aspx
 
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框  <form id="form1" runat="server">
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框        
<asp:ScriptManager ID="ScriptManager1" runat="server" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框   
<div class="demoarea">
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框        
<div class="demoheading">CascadingDropDown 联动选择的下拉框</div>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框        
<table>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框            
<tr>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框                
<td>国家</td>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框                
<td><asp:DropDownList ID="DropDownList1" runat="server" Width="170" /></td>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框            
</tr>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框            
<tr>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框                
<td>省份</td>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框                
<td><asp:DropDownList ID="DropDownList2" runat="server" Width="170" /></td>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框            
</tr>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框            
<tr>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框                
<td>城市</td>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框                
<td><asp:DropDownList ID="DropDownList3" runat="server" Width="170" AutoPostBack="true"
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框                    OnSelectedIndexChanged
="DropDownList3_SelectedIndexChanged" /></td>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框            
</tr>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框        
</table>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框        
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框        
<cc1:CascadingDropDown ID="CascadingDropDown1" runat="server" TargetControlID="DropDownList1"
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框            Category
="Make" PromptText="Please select a make" LoadingText="[Loading makes...]"
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框            ServicePath
="CarsService.asmx" ServiceMethod="GetDropDownContents" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框        
<cc1:CascadingDropDown ID="CascadingDropDown2" runat="server" TargetControlID="DropDownList2"
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框            Category
="Model" PromptText="Please select a model" LoadingText="[Loading models...]"
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框            ServiceMethod
="GetDropDownContentsPageMethod" ParentControlID="DropDownList1" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框        
<cc1:CascadingDropDown ID="CascadingDropDown3" runat="server" TargetControlID="DropDownList3"
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框            Category
="Color" PromptText="Please select a color" LoadingText="[Loading colors...]"
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框            ServicePath
="CarsService.asmx" ServiceMethod="GetDropDownContents"
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框            ParentControlID
="DropDownList2" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框      
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框        
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional" RenderMode="inline">
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框            
<ContentTemplate>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框                
<asp:Label ID="Label1" runat="server" Text="[您还没有选择]" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框            
</ContentTemplate>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框            
<Triggers>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框                
<asp:AsyncPostBackTrigger ControlID="DropDownList3" EventName="SelectedIndexChanged" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框            
</Triggers>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框        
</asp:UpdatePanel>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框    
</div>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
</form>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
 
 
Default.aspx.cs
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框using System;
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
using System.Data;
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
using System.Configuration;
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
using System.Web;
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
using System.Web.Security;
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
using System.Web.UI;
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
using System.Web.UI.WebControls;
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
using System.Web.UI.WebControls.WebParts;
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
using System.Web.UI.HtmlControls;
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
using System.Web.Services;
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
using AjaxControlToolkit;
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框 
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
public partial class _Default : System.Web.UI.Page 
 
 
 
 
 
数据:
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框<?xml version="1.0" encoding="utf-8" ?>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
<CarsService>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框 
<make name="中国">
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框    
<model name="浙江">
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框      
<color name="杭州" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框      
<color name="宁波" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框      
<color name="金华" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框    
</model>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框    
<model name="江苏">
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框      
<color name="南京" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框      
<color name="苏州" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框    
</model>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框    
<model name="福建">
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框      
<color name="福州" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框      
<color name="厦门" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框    
</model>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框 
</make>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框 
<make name="美国" >
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框    
<model name="A4">
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框     
<color name="Azure" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框      
<color name="Light Azure"/>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框      
<color name="Dark Azure" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框    
</model>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框    
<model name="S4" value="S4 (value)">
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框      
<color name="Silver" value="Silver (value)" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框      
<color name="Metallic" value="Metallic (value)" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框    
</model>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框    
<model name="A6" value="A6 (value)">
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框      
<color name="Cyan" value="Cyan (value)" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框    
</model>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框 
</make>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框 
<make name="韩国" >
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框    
<model name="3 series" value="3 series (value)">
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框      
<color name="Blue" value="Blue (value)" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框      
<color name="Sky Blue" value="Sky Blue (value)" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框      
<color name="Racing Blue" value="Racing Blue (value)" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框    
</model>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框    
<model name="5 series" value="5 series (value)">
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框      
<color name="Yellow" value="Yellow (value)" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框      
<color name="Banana" value="Banana (value)" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框    
</model>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框    
<model name="7 series" value="7 series (value)">
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框      
<color name="Brown" value="Brown (value)" />
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框    
</model>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框 
</make>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
</CarsService>
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框 
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
 
 
 
 
 
 
WebService代码:
 
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框// (c) Copyright Microsoft Corporation.
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
// This source is subject to the Microsoft Permissive License.
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
// See http://www.microsoft.com/resources/sharedsource/licensingbasics/sharedsourcelicenses.mspx.
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
// All other rights reserved.
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
 
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框 
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
using System;
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
using System.Collections.Specialized;
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
using System.Web;
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
using System.Web.Services;
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框
using System.Xml;
altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框 

效果如下:

altas(ajax)控件(六):CascadingDropDown 联动选择的下拉框

相关文章:

  • 2022-12-23
  • 2021-11-07
  • 2021-11-09
  • 2021-10-03
  • 2021-07-11
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-11-20
  • 2022-02-12
  • 2021-10-07
  • 2021-06-24
  • 2022-12-23
  • 2022-02-18
相关资源
相似解决方案