Christian Wenz
本文档是Visual C# 教程 (转至 Visual Basic 教程)
AJAX Control Toolkit 中的CascadingDropDown 控件扩展了DropDownList控件 ,从而当一个DropDownList 发生变化时可在另一个DropDownList 中加载相关的值。 (例如 ,一个列表展示美国各州 ,另一个列表中则填充有一个州的主要城市。 )第一个要解决的问题是用这个控件实际填充一个下拉列表。
概述AJAX Control Toolkit 中的CascadingDropDown 控件扩展了DropDownList控件 ,这样如果在一个DropDownList 中发生变化 ,则会在另一个DropDownList 中加载对应的值。 (例如,一个列表展示美国各州,另一个列表中则填充有一个州的主要城市。)第一个要解决的问题是用这个控件实际填充一个下拉列表。 步骤为了激活ASP.NET AJAX 和Control Toolkit 的功能 ,必须将ScriptManager 控件放置于页面中某处 (可放于任何地方 ,但必须在<form> 元素内 ):
接着 ,我们需要一个DropDownList 控件 :
我们要对这个下拉列表添加一个CascadingDropDown 扩展器。这个扩展器会向一个Web服务发送一个异步请求,该服务于是返回一组 列表项以便显示于列表中。为此,需要设置下列 CascadingDropDown 属性:
下面是CascadingDropDown 元素的标记。C#和VB 代码的唯一不同之处是关联的Web 服务的名称 :
源自CascadingDropDown 扩展器的JavaScript 代码用以下签名调用一个Web 服务方法 : public CascadingDropDownNameValue[] MethodNameHere(string knownCategoryValues, string category) 重要的是 ,该方法需要返回一个类型为CascadingDropDownNameValue 的数组 (在ASP.NET AJAX Control Toolkit 有这个类型的定义 )。在 CascadingDropDownNameValue 构造器中,首先要提供列表项的文本,然后要提供列表项的值,如同HTML中的<option value="VALUE">NAME</option>所为。下面是一个例子 :
浏览器加载该页面时 ,会触发对列表的填充 ,于是列表含有三个供应商的信息。
列表会自动填充
|