|
DataGrid中为我们提供了5种常用的列控件
• BoundColumn • ButtonColumn • EditCommandColumn • HyperLinkColumn • TemplateColumn
通常情况下,这5种列控件都能够完成我们大部分的开发,但是有时遇到特殊情况下,为了简化开发,自定义列控件就派上的用场。
在开发以前,让我们先来了解下列控件的基础知识:
所有的列控件都是来自System.Web.UI.WebControls命名空间,比如BoundColumn来自System.Web.UI.WebControls.BoundColumn命名空间。所有的这些控件都来自DataGridColumn类。
DataGridColumn类具有的属性:
FooterStyle 获取列的脚注部分的样式属性。 FooterText 获取或设置列的脚注部分中显示的文本。 HeaderImageUrl 获取或设置列的页眉节中显示的图像的位置。 HeaderStyle 获取列的页眉节的样式属性。 HeaderText 获取或设置在列的页眉节中显示的文本。 ItemStyle 获取列的项单元格的样式属性。 SortExpression 获取或设置选择进行排序的列时传递到 OnSortCommand 方法的字段或表达式的名称。 Visible 获取或设置一个值,该值指示此列在 DataGrid 控件中是否可见。
DataGridColumn类有两个很重要的方法必须提出,一是Initialize方法,二是InitializeCell方法。Initialize方法提供基实现以将从 DataGridColumn 类派生的列重置为它的初始状态。InitializeCell 方法提供基实现以将从 DataGridColumn 类派生的列中的指定单元格重置为它的初始状态。(具体这两个方法的说明请大家自行查阅)
好了,说了那么多废话,让我们马上进入到自定义列控件的开发。
我们先来做一个非常简单的列控件,功能就是显示指定的文字。
首先创建一个类库项目,命名为SimpleColumn,然后创建继承自DataGridColumn类的HelloColumn类,代码如下:
using System; using System.Web; using System.Web.UI; using System.Web.UI.WebControls;
namespace SimpleColumn { /**//// <summary> /// Class1 的摘要说明。 /// </summary> public class HelloColumn : DataGridColumn { public override void InitializeCell(TableCell cell, int columnIndex, ListItemType itemType) { base.InitializeCell (cell, columnIndex, itemType); if((itemType == ListItemType.AlternatingItem)(itemType == ListItemType.SelectedItem)(itemType == ListItemType.Item))
上一篇: 利用System.Web.Mail 发送邮件
下一篇: 利用Visual C#实现Reversi游戏开发
|