ASP.NET中BulletedList列表控件使用及详解

BulletedList 控件创建一个无序或有序(编号)的项列表,它们分别呈现为 HTML UL 或 OL 标记。可以指定项、项目符号或编号的外观,可以静态定义列表项或通过将控件绑定到数据来定义列表项,也可以在用户单击项时作出响应。

对于ASP.NET 1.x里要动态显示Bulledted List时,要么自己利用HTML的<ol>或<ul>元素构造,要么就是“杀鸡用牛刀”的动用Repeater来显示。前者过于死板,后者过于Overkill,也许微软听到这种声音,于是ASP.NET 2.0总算搞了个BulletedList出来了。这控件虽然给人不太多注意,但却看得出微软确实是在乎“用户需求”的。BulletedList控件的主要属性有BulletStyle、DisplayMode、Items和主要事件Click。

BulletStyle:项目符号编号样式值,对应着System.Web.UI.WebControls.BulletStyle枚举类型值。其共有以下10种选择项:

1.Circle:表示项目符号编号样式设置为“○”空圈圈。
2.CustomImage:表示项目符号编号样式设置为自定义图片,其图片由BulletImageUrl属性指定。
3.Disc:表示项目符号编号样式设置为“●”实圈圈。
4.LowerAlpha:表示项目符号编号样式设置为小写字母格式。如a、b、c、d等26个小写英文字母。
5.LowerRoman:表示项目符号编号样式设置为小写罗马数字格式。如i、ii、iii、iv等小写的罗马数字。
6.NotSet:表示不设置项目符号编号样式。此时将以Disc样式为默认样式显示。
7.Numbered:表示设置项目符号编号样式为数字格式。如1、2、3、4等数字格式。
8.Square:表示设置项目符号编号样式为“■”实体黑方块。
9.UpperAlpha:表示设置项目符号编号样式为大写字母格式。如A、B、C、D等26个大写英文字母。
10.UpperRoman:表示设置项目符号编号样式为大写罗马数字格式。如I、II、III、IV等大写的罗马数字。

DisplayMode:顾名思义为显示模式,对应着System.Web.UI.WebControls.BulletedListDisplayMode枚举类型值。其共有以下三种选择项:

1. Text:表示以纯文本形式来表现项目列表。
2. HyperLink:表示以超链接形式来表现项目列表。链接文字为某个具体项ListItem的Text属性,链接目标为ListItem的Value属性。
3. LinkButton:表示以服务器控件LinkButton形式来表现项目列表。此时每个ListItem项都将表现为LinkButton,同时以Click事件回发到服务器端进行相应操作。

Items:该属性对应着System.Web.UI.WebControls.ListItem对象集合。项目符号编号列表中的每一个项均对应一个ListItem对象。ListItem对象有四个主要属性:
Enabled:该项是否处于激活状态。默认为True。
Selected:该项是否处于选定状态。默认为True。
Text:该项的显示文本。
Value:该项的值。
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>部分加个样式如下:

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

OK!横排成菜单模式了!

(0)

相关推荐

  • ASP.NET中DropDownList下拉框列表控件绑定数据的4种方法

    DropDownList Web 服务器控件使用户能够从预定义的列表中选择一项.它与 ListBox Web 服务器控件的不同之处在于,其项列表在用户单击下拉按钮之前一直处于隐藏状态.另外,DropDownList 控件与 ListBox 控件的不同之处还在于它不支持多重选择模式. DropDownList在html中的呈现对应的是select,下面让我们来看一下DropDownList绑定数据的几种方法. 一.把Array数组绑到DropDownList 复制代码 代码如下: string[]

  • asp.net GridView中超链接的使用(带参数)

    方法1.使用<a>标签, 前台: 复制代码 代码如下: <a href='<%# "OrigImageShow.aspx?id=1&image_id="+Eval("ID")%>' id="tb_search" runat="server" target="_blank">  弹出  </a> <a href='Javascript:alert(

  • ASP.NET中HiddenField隐藏域控件的使用方法

    HiddenField控件的作用简单的说是用于存储需要在向服务器的发送间保持的值.它作为 <input type= "hidden"/> 元素呈现,并且通过添加runat="server"就可以使它成为标准的HTML服务器控件.下面列出的是ASP.NET HiddenField Web服务器控件可以使用的属性和事件. 复制代码 代码如下: <asp:HiddenField     EnableTheming="True|False&quo

  • ASP.NET中FileUpload文件上传控件应用实例

    使用 FileUpload 控件,可以为用户提供一种将文件从用户的计算机发送到服务器的方法.该控件在允许用户上载图片.文本文件或其他文件时很有用.要上载的文件将在回发期间作为浏览器请求的一部分提交给服务器.在文件上载完毕后,您可以用代码管理该文件. 大致了解了一下FileUpload,让我们来看一下FileUpload几个实际应用中问题的处理方法. 1.一次上传多个文件 要一次上传多个文件,我们可以像传单个文件那样对每个文件单独进行处理,除此之外,我们还可以使用HttpFileCollectio

  • ASP.NET jQuery 实例9 通过控件hyperlink实现返回顶部效果

    要实现该效果,首先要先了解以下几点基础知识: 窗体滚动事件:$(window).scroll(function(){...}); 获取窗体滚动距离:$(window).scrollTop(); 获取窗体高度:$(window).height(); 了解以上内容就可以实现通过hyperlink控件实现返回顶部的效果了. 1.准备界面结构代码: 复制代码 代码如下: <form id="form1" runat="server"> <div> &

  • ASP.NET自动为URL加上超链接的代码

    作为一个程序员,在完成设计后还要根据程序的情况以及用户的反映不断对程序进行改进,这样才能不断地完善自己的作品.笔者在制作完软件商务网的论坛后,发现人们总喜欢在帖子中加上各种有用的URL链接或Email地址.而笔者当初设计时没有考虑到这一点,使得这些URL链接或Email地址只能以文字的形式而并不是以超链接的形式显示,其它浏览帖子的人还必须把这些URL链接拷贝到浏览器中或把Email地址拷贝到Outlook中才能转到相应的链接地址或发送电子邮件到相应的Email地址. 发现这个问题后,笔者即着手进

  • ASP.NET Calendar日历(日期)控件使用方法

    Calendar 控件显示一个日历,用户可通过该日历导航到任意一年的任意一天.当 ASP.NET 网页运行时,Calendar 控件以 HTML 表格的形式呈现.因此,该控件的许多属性与多种不同的表格格式相符.在这些属性中,有几个在一些低版本的浏览器中不能得到完全支持,因此在这些浏览器中并不能使用所有的格式功能. 使用 Calendar 控件在网页上显示日历的单个月.该控件使您可以选择日期并移到下个月或上个月.Calendar 控件支持 System.Globalization 命名空间中的所有

  • ASP.NET中HyperLink超链接控件的使用方法

    HyperLink(超链接) 作用:负责页面之间的导航 属性 值 作用 NavigateUrl url 将要跳转的页面地址(url) Font-Underline False 去除超链接下划线 一.HyperLink控件的基础使用 用到最多的无非就是NavigateUrl,既然是超链接,总得有个链接地址,下面看具体用法: 复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeFile=&quo

  • ASP.NET中Validation验证控件正则表达式特殊符号的说明

    RegularExpressionValidator控件表达式说明: 方括号"[ ]"用与定义可接受的字符.[abc123] 表示控件只能接受 a,b,c,1,2,3 这6个字符: 反集合符号 " ^ "用于定义不可以接受的字符.[^a-h] 表示控件除了 a 到 h 8个字符外,都可以接受: 花括号"{ }"定义必须输入的字符个数.{6}表示只能输入6个字符 : {6,}表示必须输入6个以上,无上限 : {2,6} 表示必须输入2至6个字符:但

  • ASP.NET中 CheckBox复选框控件的使用

    我们可以使用两种类型的 ASP.NET 控件将复选框添加到 Web 窗体页上:单独的 CheckBox 控件或 CheckBoxList 控件.两种控件都为用户提供了一种输入布尔型数据(真或假.是或否)的方法. 这里我们单独使用CheckBox,先来看看它的属性 属性 描述 .NET AutoPostBack 规定在 Checked 属性已改变后,是否立即向服务器回传表单.默认是 false. 1.0 CausesValidation 规定点击 Button 控件时是否执行验证. 2.0 Che

  • JavaScript asp.net 获取当前超链接中的文本

    <asp:LinkButton ID="BtnBaiyakuNo" runat="server" OnClientClick="openNo(this); return false;" TabIndex="0" /> function openNo(sender) { var linkNo = sender.toString().split("'")[1].replace(/\$/g,"

  • ASP.NET中CheckBoxList复选框列表控件详细使用方法

    可以使用两种类型的 ASP.NET 控件将复选框添加到 Web 窗体页上:单独的 CheckBox 控件或 CheckBoxList 控件.两种控件都为用户提供了一种输入布尔型数据(真或假.是或否)的方法. 本文主要介绍CheckBoxList,不言而喻,看到List就知道是一个列表(集合),一个控件可以包含多个CheckBox,下面让我们来看看具体的用法. 1.绑定数据 复制代码 代码如下: this.lngCatalogID.DataSource = dt; //这里我绑到DataTable

  • ASP.NET jQuery 实例10 动态修改hyperlink的URL值

    1.先准备界面代码: 复制代码 代码如下: <form id="form1" runat="server"> <div align="left"> <fieldset style="width: 300px; height: 200px;"> <table cellpadding="0" cellspacing="0" border="

随机推荐