色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

asp.net控件開發基礎(19)

  上兩篇討論了基本數據綁定控件的實現步驟,基本上我們按著步驟來就可以做出簡單的數據綁定控件了。過年前在看DataGrid的實現,本來想寫這個的,但2.0出了GridView了,再說表格控件實現比較復雜,所以先放著。我們一起打開MSDN來看點別的,當然主題還是離不開數據綁定控件。

  一.數據綁定控件的模板

  打開MSDN一看,我們會發現DataList和DataGrid都不是直接繼承自WebControl類的,而是繼承自一個叫BaseDataList的類。唯獨Repeater是直接繼承自WebControl類的,Repeater的簡單也就代表定義樣式的靈活。DataList和DataGrid則是規規矩矩的經過加工的列表控件。

  再看看BaseDataList,其是一個抽象類。其為數據列表控件提供了公共的列表樣式,屬性,布局。并定義了兩個抽象方法CreateControlHierarchy方法和PrepareControlHierarchy方法,留給子類實現,這兩個方法上兩篇,我們都認識過了。主要是因為定義了不同模板和樣式。可以說是一個典型的模板類。

  如果你也需要寫一個基于表格的數據綁定控件,可以跳過從WebControl繼承,優先考慮從BaseDataList開始。如果這個抽象類無法滿足需求,那你便放棄他。自己定義一個抽象類,定義公共的屬性,方法等,這樣對以后的擴展有利。當然一般情況下,我們的需求就夠用了。這里我們可以結合設計模式的學習得出的一個結論:把公用的成員抽象出來。說到這里,我們漏掉了一個數據綁定控件的一個大話題,列表綁定控件,DropDownList,ListBox,CheckBoxList等

  下面來看看Repeater版本的DropDownList

<ASP:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
SelectCommand
="SELECT top 3 [ProductID], [ProductName] FROM [Alphabetical list of products]">
</ASP:SqlDataSource>
<ASP:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSource1">
<HeaderTemplate>
<select id="Select1">
</HeaderTemplate>
<ItemTemplate>
<option><%# Eval("ProductName")%></option>
</ItemTemplate>
<FooterTemplate>
</select>
</FooterTemplate>
</ASP:Repeater>
<ASP:DropDownList ID="DropDownList2"
DataTextField
="ProductName"
runat
="server" DataSourceID="SqlDataSource1">
</ASP:DropDownList>

NET技術asp.net控件開發基礎(19),轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 平湖市| 庄河市| 商都县| 新宁县| 高淳县| 海南省| 沙田区| 新昌县| 广昌县| 霍林郭勒市| 颍上县| 台山市| 牡丹江市| 咸丰县| 榆树市| 斗六市| 巴东县| 萝北县| 广元市| 金平| 江西省| 斗六市| 西畴县| 东乌| 丹东市| 吕梁市| 芦溪县| 满洲里市| 荣成市| 无极县| 湘西| 芦山县| 桂阳县| 施秉县| 九江市| 丹巴县| 丹凤县| 韶关市| 拉孜县| 泰州市| 化州市|