ASP.NET中不规则表格的动态实现
2013-04-29张捍卫
张捍卫
摘要:不规则表格的处理是数据库管理系统中一个十分重要的问题,研究了.NET提供的Table控件在解决通用不规则表格中的一种应用方法,并详细论述了在Visual Studio .NET中实现该方法的过程。使用结果表明,该方案处理网页中不规则表格问题高效、可靠,具有良好的可扩充性和可重用性。
关键词:ASP.NET;Table控件;不规则表格
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2013)08-1821-03
在ASP.NET开发资产实时核算管理系统中,经常要把数据以表格的形式呈现出来,一般使用HTML或GridView控件来实现。但多数表格是不规则的表格(如表1),HTML虽然能创建不规则的表格,但动态创建表格实现起来比较麻烦,而.NET提供的GridView控件一般只能输出行列整齐的表格,不能设置跨行或跨列的单元格。因此,在系统开发中,使用Table服务器控件,动态创建表格,很好地解决了这个问题。
1.1 Table对象
Table对象的Caption属性用来设置表格的标题,可在标题文本中插入换行符
来形成多行标题。使用CaptionAlign属性可以设置标题文本的对齐方式,对齐方式的值有:NotSet、Top、Bottom、Left和Right,分别是未设置对齐方式、标题与行的上边缘对齐、与下边缘对齐、与左边对齐和与右边对齐。
Table对象的Rows用于获取表行的集合,其主要属性和方法如下:
Count属性:表示Rows集合的元素个数,即表的总行数。
Add方法:用于添加一个新的TableRow对象,即向表中添加一行。
AddAt方法:用于在指定的位置添加一个新的TableRow对象,即向表中插入一行。
Remove方法:用于移除一个TableRow对象,即从表中移除一行。
RemoveAt方法:用于移除指定索引值的TableRow对象,即从表中移除指定索引值的行。
Clear方法:清除Rows集合中的所有元素,即清除表中的所有行。
1.2 TablelRow对象
TablelRow类的实例表示Table控件中的行。TablelRow对象的Cells属性,表示表行中单元格的集合,Cells集合的主要属性和方法有:
Count属性:表示Cells集合的元素个数,即列数。
Add方法:用于添加一个新的TableCell对象,即向表中添加一个单元格。
AddAt方法:用于在指定的位置添加一个新的TableCell对象,即向表行中某位置插入一个单元格。
Remove方法:用于移除一个TableCell对象,即从表行中移除一个单元格。
RemoveAt方法:用于移除指定索引值的TableCell对象,即从表行中移除指定索引值的单元格。
Clear方法:清除Cells集合中的所有元素,即清除表行中的所有单元格。
1.3 TableCell对象
TableCell对象的实例表示TableRow对象中的单元格。TableCell对象的主要属性有:
ColumnSpan属性:表示该单元格在呈现出的表中所跨越的列数。例如,如果ColumnSpan属性值为2,表示该单元格在Table控件中占两列。
RowSpan属性:表示该单元格在呈现出的表中所跨越的行数。例如,如果RowSpan属性值为2,表示该单元格在Table控件中占两行。
Wrap属性:决定是否允许单元格内容在单元格内换行。如果允许换行,则属性值为True,否则为False。
Controls属性:可以向单元格动态添加控件。例如,浏览网页时要在单元格中输入信息,可以向单元格添加文本框控件,方法如下:
3 结束语
用上述方法处理不规则表格显示数据库数据的方法简单实用,在资产实时核算系统中得到了很好应用。由于篇幅所限,未能尽述表格的所有相关功能,如在动态创建行和列的时候,修改行和列的样式属性,创建自定义样式的表格等,同时如何更好地分页打印表头也是一个值得探讨的问题。总之,掌握了上述方法后,只要稍作修改,就能制作出更复杂的表格。
参考文献:
[1] Christian Nagel,Bill Evjen,Jay Glynn. C#高级编程[M].李敏波,译. 3版.北京:清华大学出版社,2006.
[2] 明日科技.Visual C#开发技术大全[M].北京:人民邮电出版社,2007.
[3] 程不功.ASP.NET 2.0动态网站开发教程[M].北京:清华大学出版社,2006.
[4] 邵淑霞,李德荣.Web页中不规则表格的实现[J].大庆高等专科学校学报,2002,22(4):15-18.
[5] Table控件单元格的动态合并技术[J].福建电脑,2008(3):185.