BulletedList使用及詳解

 

BulletedList是一個讓你輕鬆在頁面上顯示項目符號和編號格式(Bulledted List)的控件。對於ASP.NET 1.x裏要動態顯示Bulledted List時,要麼本身利用HTML的<ol>或<ul>元素構造,要麼就是「殺雞用牛刀」的動用Repeater來顯示。前者過於死板,後者過於overkill,也許微軟聽到這種聲音,因而ASP.NET 2.0總算搞了個BulletedList出來了。這控件雖然給人不太多注意,但卻看得出微軟確實是在意「用戶需求」的。BulletedList控件的主要屬性有BulletStyle、DisplayMode、Items和主要事件Click。css

l        BulletStyle:項目符號編號樣式值,對應着System.Web.UI.WebControls.BulletStyle枚舉類型值。其共有如下10種選擇項:數據庫

1.      Circle:表示項目符號編號樣式設置爲「○」空圈圈。服務器

2.      CustomImage:表示項目符號編號樣式設置爲自定義圖片,其圖片由BulletImageUrl屬性指定。server

3.      Disc:表示項目符號編號樣式設置爲「●」實圈圈。對象

4.      LowerAlpha:表示項目符號編號樣式設置爲小寫字母格式。如a、b、c、d等26個小寫英文字母。索引

5.      LowerRoman:表示項目符號編號樣式設置爲小寫羅馬數字格式。如i、ii、iii、iv等小寫的羅馬數字。事件

6.      NotSet:表示不設置項目符號編號樣式。此時將以Disc樣式爲默認樣式顯示。圖片

7.      Numbered:表示設置項目符號編號樣式爲數字格式。如一、二、三、4等數字格式。it

8.      Square:表示設置項目符號編號樣式爲「■」實體黑方塊。io

9.      UpperAlpha:表示設置項目符號編號樣式爲大寫字母格式。如A、B、C、D等26個大寫英文字母。

10. UpperRoman:表示設置項目符號編號樣式爲大寫羅馬數字格式。如I、II、III、IV等大寫的羅馬數字。

l        DisplayMode:顧名思義爲顯示模式,對應着System.Web.UI.WebControls.BulletedListDisplayMode枚舉類型值。其共有如下三種選擇項:

1.      Text:表示以純文本形式來表現項目列表。

2.      HyperLink:表示以超連接形式來表現項目列表。連接文字爲某個具體項ListItem的Text屬性,連接目標爲ListItem的Value屬性。

3.      LinkButton:表示以服務器控件LinkButton形式來表現項目列表。此時每一個ListItem項都將表現爲LinkButton,同時以Click事件回發到服務器端進行相應操做。

l        Items:該屬性對應着System.Web.UI.WebControls.ListItem對象集合。項目符號編號列表中的每個項均對應一個ListItem對象。ListItem對象有四個主要屬性:

?        Enabled:該項是否處於激活狀態。默認爲True。

?        Selected:該項是否處於選定狀態。默認爲True。

?        Text:該項的顯示文本。

?        Value:該項的值。

l        Click:該事件在BulletedList控件的DisplayMode處於LinkButton模式下,並BulletedList控件中的某項被點擊時觸發。觸發時將被點擊項在全部項目列表中的索引號(從0開始)做爲傳回參數傳回服務器端。

 

BulletedList顯示以下:

 

 

 

 

一樣,下面以三種DisplayMode狀況做三個簡單示例,以便更好理解BulletedList的各類屬性方法和應用。

 

1.     Text顯示模式:

此種模式最爲簡單,僅僅提供項目列表的顯示而以。其表現代碼爲:

        <asp:BulletedList ID="BulletedList1" BulletStyle="Circle" runat="server">

            <asp:ListItem>Item #1</asp:ListItem>

            <asp:ListItem Text="Item #2"></asp:ListItem>

            <asp:ListItem Text="Item #3" Value="Item #3"></asp:ListItem>

        </asp:BulletedList>

固然,也能夠經過數據綁定來實現數據顯示,作法相似下面HyperLink的數據綁定操做。

 

2.     LinkButton顯示模式:

這裏只簡要說明其數據綁定的數據顯示操做。

            <asp:BulletedList ID="BulletedList1" runat="server" DataSourceID="SqlDataSource1"

                DataTextField="ProductName" DataValueField="ProductID" DisplayMode="LinkButton">

            </asp:BulletedList>

            <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"

                SelectCommand="SELECT TOP 10 [ProductID], [ProductName] FROM [Products]">

            </asp:SqlDataSource>

3.     HyperLink顯示模式:

各項以超鏈接顯示   

 

固然啦,對於BelletedList控件咱們用得最可能是用它作列表顯示,好比網頁頭部的菜單欄,或從數據庫中動態讀取某列的所有字段而加以綁定顯示,今天作項目剛好碰到讀取數據庫中材質所有字段的問題,想到用此控件;具體實現以下;

前臺顯示:

<div id="stuff">

<asp:BulletedList ID="blMQ" runat="server" DataSourceID="sdsMQ" DataTextField="MQ_Name" DataValueField="id" DisplayMode="LinkButton" Width="98%" Height="62px" OnClick="blMQ_Click">
</asp:BulletedList>

<div>
<asp:SqlDataSource ID="sdsMQ" runat="server" SelectCommand="select * from Product_MaterialQ" ConnectionString="Data Source=computer\sa;Initial Catalog=Go24k_Shop;user id=sa;password=123456;">
</asp:SqlDataSource>

後臺主要代碼:

    protected void blMQ_Click(object sender, BulletedListEventArgs e)
    {
        ListItem List = blMQ.Items[e.Index];
        Response.Redirect("/Member/AddCustomer.aspx?id=" + List.Value.Trim());
    }

最後在前臺頁面頂部<head></head>部分加個樣式以下:

<style type="text/css">
        #stuff ul{list-style:none;margin:0px;}
        #stuff ul li{float:left;margin:0 10px}
</style>    

ok!橫排成菜單模式了!

相關文章
相關標籤/搜索