动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
   .Net → 阅读文章

 DataGrid控件使用技巧

作者来源: 
阅读 2074 人次 , 2006-4-26 10:20:00 


  将数据库内容绑定至DataGrid是非常简单的,我们所要做的就是通过SQL查询来生成一个DataReader对象,将DataGrid的DataSource属性设为这个DataReader对象,然后调用DataGrid对象的DataBind()方法。剩下的事情就是将DataGrid放置到HTML中,它可通过如下代码实现:



<asp:datagrid runat="server" />

  就是这么简单。遗憾的是通过这种简单方法生成的DataGrid并不美观。生成的DataGrid仅仅是一个封装了DataReader中所有列和行的简单的HTML表格。

  我们希望做到的是仅显示DataReader中的部分列并且设定每一列的格式。并且希望设定诸如背景颜色、字体等可以应用到整个表格的格式。最后,如果能够为每一列加上自定义的标题就更好了。例如设定标题的背景色为不同的颜色或字体为粗体。在这部分我们将研究如何完成所有这些任务!(DataGrid可以做更多的事情,我们将在今后一系列文章中看到如何对数据库结果进行分页显示,允许用户对数据排序等。)

  设定DataGrid格式

  对于DataGrid我们有两种设定格式的方法。第一种方法是在服务器端代码中通过程序进行设定。例如为了将DataGrid的背景色设定为红色,可使用如下服务器端代码:

<%@ Import Namespace="System.Drawing" %>
<script runat="server">
sub Page_Load(sender as Object, e as EventArgs)
...
DataGridID.BackColor = Color.Red
...
end sub
</script>

  另一种设定显示属性的方法是在DataGrid Web控件的标记中进行设定。下面的代码和上面的代码效果是一样的:

<asp:datagrid runat="server" BackColor="Red" />

  我个人喜欢后一种方法。我发现在Web控件的标记中设定显示属性比在服务器端代码中设定要简洁。(请注意,对于服务器端代码的方法,需要引入System.Drawing命名空间,才能通过Color.Red对颜色进行引用;对于在Web控件的标记中设定显示属性的方法,仅需写上BackColor="Red"。我觉得后一种方法更可读。)

  让我们看一下用于设定DataGrid格式的有用的属性:

   BackColor — 设定背景颜色。

   Font — 设定DataGrid的字体信息。字体信息包括使用何种字体、字号,是否粗体,斜体等。

   CellPadding — 设定HTML表格中单元格内的边距。

   CellSpacing — 设定HTML表格中单元格之间的间距。

   Width — 设定HTML表格的宽度(可以以像素、百分比等为单位)

   HorizontalAlign — 设定表格在页面上的对齐方式(左对齐、右对齐、居中、未设定)

  一个使用上述属性而使得表格变得漂亮的例子如下所示。请注意DataGrid的Font属性是一个对象,它指向了FontInfo类,FontInfo类包括Size, Name, Bold, Italic等属性。为了设定Font对象所指向类的属性,必须通过连字符(-)完成。这类似于VB.Net和C#语言中表示对象属性的点(.)。

<asp:DataGrid runat="server" id="dgFAQs"
BackColor="#eeeeee" Width="85%"
HorizontalAlign="Center"
Font-Bold="True" Font-Name="Verdana"
Font-Size="10pt" />

DataGrid控件使用技巧(图一)

  是否印象深刻?通过几行文本,我们改变了DataGrid的外观,生成了一个居中、具有灰色和漂亮字体的HTML表格。
  
 本文TagsTag  
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:用ASP.NET实现在线用户统计
· 下一篇:ASP.NET 2.0 中实现跨页提交
· ASP.NET写无限级下拉菜单不再难
· 将上传图片打上防伪图片水印并写入数据库
· Visual C++.NET编程讲座之六
· 细细品味ASP.NET (三)
· 域名专题 - 域名劫持---163.net被h的分析


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077