CascadingDropDown通常叫作级联下拉菜单,本文将通过读取Northwind数据库中的EmplyeeOrderOrderDatail信息作为示例,来展示一下它的使用。

 

主要内容

1CascadingDropDown控件介绍

2.从数据库读取数据并填充CascadingDropDown

 

一.CascadingDropDown控件介绍

CascadingDropDown通常叫作级联下拉菜单,本文将通过读取Northwind数据库中的EmplyeeOrderOrderDatail信息作为示例,来展示一下它的使用。示例代码如下:

Atlas学习手记(12):使用CascadingDropDown控件<atlasToolkit:CascadingDropDown ID="CDD1" runat="server">
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件    Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件    
<atlasToolkit:CascadingDropDownProperties
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件        
TargetControlID="DropDownList2"
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件        Category
="Model"
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件        PromptText
="Please select a model"
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件        LoadingText
="[Loading modelsAtlas学习手记(12):使用CascadingDropDown控件]"
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件        ServicePath
="CarsService.asmx"
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件        ServiceMethod
="GetDropDownContents"
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件        ParentControlID
="DropDownList1"
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件        SelectedValue
="SomeValue">
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件    
</atlasToolkit:CascadingDropDownProperties>
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件    Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件
</atlasToolkit:CascadingDropDown>

对于CascadingDropDown需要为它添加CascadingDropDownProperties,有多少个下拉列表,就添加几个CascadingDropDownProperties,主要属性如下:

属性

说明

TargetControlID

指定要扩展的DropDownListID

Category

DropDownList表示的类别名称,在WebMethod中会用到

PromptText

没有选择时显示的文字

LoadingText

加载数据时显示的文字

ServicePath

获取数据的Web Service,为每个DropDownList都要指定

ServiceMethod

获取数据的Web Method

ParentControlID

要扩展的DropDownList的父控件ID

SelectedValue

默认的选择项的值

二.从数据库读取数据并填充CascadingDropDown

下面用读取Northwind数据库中的EmplyeeOrderOrderDatail信息,看一个完整的示例。在新建一个Web Site后,先在页面的头部加上:

%>

加入三个DropDownList,分别用来显示EmplyeeOrderOrderDatail

Atlas学习手记(12):使用CascadingDropDown控件<div>
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件    
<h3>
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件        Employee:
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件        
<asp:DropDownList ID="ddlEmployees" runat="server" /><br /><br />
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件         
&nbsp;&nbsp;Order:
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件        
<asp:DropDownList ID="ddlOrders" runat="server" /><br /><br />
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件         
&nbsp;&nbsp;Detail:
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件        
<asp:DropDownList ID="ddlOrderDetails" runat="server" />
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件    
</h3>
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件
</div>

下面我们添加一个Northwind.asmxWeb Service,编写相关的Web Method

Atlas学习手记(12):使用CascadingDropDown控件[WebMethod]
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件
public CascadingDropDownNameValue[] GetEmployees(
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件    
string knownCategoryValues, string category)
Atlas学习手记(12):使用CascadingDropDown控件
}

注意Web Method的参数签名是不可以改变的,并且它最后返回的是名-值对这种形式的数组。

整个完整后的Web Service如下:

}

Web.config中设置连接信息:

Atlas学习手记(12):使用CascadingDropDown控件<connectionStrings>
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件    
<add name="ConnectionString" connectionString="Data Source=RJ-097;User ID=sa;Password=sa;Initial Catalog=Northwind" providerName="System.Data.SqlClient"/>
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件
</connectionStrings>

这时我们再添加CascadingDropDown控件,设置它的属性如下:

Atlas学习手记(12):使用CascadingDropDown控件<atlasToolkit:CascadingDropDown ID="CascadingDropDown1" runat="server">
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件    
<atlasToolkit:CascadingDropDownProperties Category="Employee" ParentControlID=""
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件        PromptText
="Select Employee" SelectedValue="" ServiceMethod="GetEmployees" ServicePath="Northwind.asmx"
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件        TargetControlID
="ddlEmployees" />
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件    
<atlasToolkit:CascadingDropDownProperties Category="Order" ParentControlID="ddlEmployees"
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件        PromptText
="Select Order" SelectedValue="" ServiceMethod="GetOrdersByEmployee"
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件        ServicePath
="Northwind.asmx" TargetControlID="ddlOrders" />
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件    
<atlasToolkit:CascadingDropDownProperties Category="OrderDetail" ParentControlID="ddlOrders"
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件        PromptText
="Select OrderDetail" SelectedValue="" ServiceMethod="GetDetailsByOrder"
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件        ServicePath
="Northwind.asmx" TargetControlID="ddlOrderDetails" />
Atlas学习手记(12):使用CascadingDropDown控件
Atlas学习手记(12):使用CascadingDropDown控件
</atlasToolkit:CascadingDropDown>

至此,大功告成。运行后效果如下:

选择:

Atlas学习手记(12):使用CascadingDropDown控件

完整示例下载:https://files.cnblogs.com/Terrylee/CascadingDropDownDemo.rar

相关文章: