摘要:作為今后WEB應用開發的主流技術之一,ASP.NET為我們提供了為數眾多的具有強大功能的內置控件,利用這些控件可以很方便的實現我們需要的功能。但是在不同的場合下人們對功能的需求是不同的,因此在熟悉ASP.NET各控件功能的同時,對控件使用技巧的掌握也是必不可少的。該文通過一個完整的實例詳細介紹了多個DROPDOWNLIST控件的數據源綁定技巧。
關鍵詞:ASP.NET;控件;DropDownList;實例
中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2010)02-284-02
The Usage Skill and Applied Example of DropDownList Control in Asp.net
WANG Xiang-jun, GU Qi-hai, WANG Ri-hong
(Qingdao Technological University, School of Computer Engineering, Qingdao 266000, China)
Abstract: As one of the leading techniques of development in future Web application ASP.net provide us with many powerful inner control, we can achieve our purpose conveniently by use these controls. But people have different requirements in different situation, so we not only familiar with all kinds of control's function, but also hold various usage skills ofthese controls. This article introduce a mutual-move technique of DropDownList control by a integrated example, and resolve some correlative problems in that process.
Key words: ASP.NET; control; dropDownList; example
ASP.NET是Microsoft公司推出的新一代基于B/S的動態WEB開發工具,是今后電子商務、電子政務以及遠程教育等WEB應用開發的主流技術之一。雖然它繼承了原ASP的特點,但是在語法和應用上都和ASP有了很大的區別[1]。筆者最近在.NET環境下用C#語言編寫了研究生管理系統。下面就DropDownList控件的使用技巧問題進行探討,并給出具體的代碼實例。
1 DropDownList控件的動態數據綁定
DropDownList控件又稱下拉列表框控件,控件列表中的多行數據以隱含的形式表示出來,當用戶需要選擇所需列表項時,通過點擊“下三角”圖形展示,用戶每次只能選用一個數據項。DropDownList控件實際上是列表項的容器,下拉列表框用Items集合表示各項的內容[2]。
如果在ASP.NET頁面中逐個的手動填寫DropDownList控件的列表選項,當頁面中有很多個下拉列表時會比較麻煩,而且修改比較麻煩。DropDownList控件動態連接到數據庫,按指定條件從數據庫中查詢出列表選項數據,然后綁定到控件,可以很方便快速地顯示出多個下拉選項[5]。
在研究生管理系統中,需要用到很多個DropDownList控件,例如在在研究生發表論文登記頁面中,論文管理,題目來源,作者排名,發表類別等都需要用到DropDownList控件。通過設計公共類中的綁定數據的方法和數據庫中相應數據表的設計,實現多個下拉列表的動態數據綁定。效果如圖1所示。
2 數據庫中關于表的設計
在數據庫中建立一個表,命名為ddlContent;[ID][int],主鍵、自動增1,[ddlValue][varchar 50][ddlTtem][varchar 50][type][varchar 50],表中內容見圖2。
3 公共類中源于綁定DropDownList控件的代碼
為了方便與數據庫的連接,需要設計一些通用的方法,并將其放到一個單獨的類中。在ASP.NET中,有一個特殊的APP_CODE文件夾,該文件夾專門用于保存.cs文件,在對網站進行調試的過程中,當瀏覽器對web應用程序發出首次請求時,ASP.NET會自動編譯APP_CODE文件夾中的代碼[3]。
在【解決方案資源管理器】中,鼠標右鍵單擊項目名,選擇【添加ASP.NET文件夾】【app_code】命令,將App_Code文件夾添加到當前網站中。鼠標右鍵單擊app_code文件夾,添加一個名為CommonMethods.cs的類,修改代碼為如下形式。
Public class CommonMethods{
//數據庫連接字符串
public static readonly string connString
=ConfigurationManager.ConnectionStrings[“ConnectionString”].ConnectionString;
///
///將數據庫中的數據綁定到對應DropDownList控件上
///
///控件名
///區別綁定到那個控件上
Private static void bindDdl (DropDownList ddlName,string type)
{//建立與數據庫的連接
SqlConnection con=new SqlConnection(CommonMethods.connString);
DataSet ds=new DataSet();
string sql=”select * from ddlContent where type=’”+this.type+”’”;
//填充數據
SqlDataAdapter da=new SqlDataAdapter(sql,con);
da.fill(ds);
//綁定數據到下拉列表
ddllName.DataSource=ds;
ddlName.DataKeys=”ddlValue”;
ddlName.DataBind();}}
4 頁面中代碼
在發表論文登記頁面中,添加如下代碼:
If(!ispostBack)
{//調用公共類中的方法,把數據表中的數據綁定到對應的控件上
CommonMethods.bindDdl(ddlZzpm,”zzpm”);
CommonMethods.bindDdl(ddlSlqk,”slqk”);
CommonMethods.bindDdl(ddlFblb”,”fblb”);
CommonMethods.bindDdl(ddlFbqk,”fbqk”);}
通過簡單的幾句代碼,就可以將頁面上用到的下拉列表的數據進行了綁定,可以說非常的有效率。而且以后如果進行修改,可以再數據庫中進行修改,很方面。
5 結束語
通過實際的例子說明了實現多個DropDownList控件的動態數據綁定,這是在開發Web網絡系統中實際用過的。文中所提供的代碼均測試成功,具有很強的使用價值,希望能給讀者啟發,起到拋磚引玉的作用。
參考文獻:
[1] 沈軍.基于ASP.NET2.0技術的WEB數據庫多層架構設計與實現[J].電子測量技術,2008,31(2):76-79.
[2] 范曉平.怎樣在DataGrid空間中內嵌DropDownList子控件[J].電腦編程技巧與維護,2008(7):90-91.
[3] 馬俊.C#網絡應用編程實驗指導與開發實例[M].北京:人民郵電出版社,2007.
[4] 李萬寶.ASP.NET技術詳解與應用實例[M].北京:機械工業出版社,2005.
[5] ASP.net DropDownList無刷新聯動[EB/OL].http://dev.esdn.net/Develop/article/28/74355.shtm.
[6] 齊亞平.在ASP.NET中的動態數據綁定[J].西安航空技術高等專科學校學報,2003(3):14-16.
[7] 張超,李隱,齊鵬.ASP.NET DropDownList控件的研究與應用[J].黑龍江科技信息,2009(13):56-56.
[8] 用JSTL實現JSP應用程序快速開發[EB/OL].http://www.knowsky.com/4159.html.