ASP.Net:Table类的使用

简介: 在做Asp.Net的时候,很多情况下数据的绑定都是使用GridView或者我之前提到的ListView,但是这两个适合用于数据的绑定,而有些时候,数据需要在后台进行处理,例如数据据内地某一条数据的特殊样式等等,当然也可以在绑定的时候处理,可是那些需要汇总的,和需要表格合并的,在操作起来可能就有一些麻烦了。

在做Asp.Net的时候,很多情况下数据的绑定都是使用GridView或者我之前提到的ListView,但是这两个适合用于数据的绑定,而有些时候,数据需要在后台进行处理,例如数据据内地某一条数据的特殊样式等等,当然也可以在绑定的时候处理,可是那些需要汇总的,和需要表格合并的,在操作起来可能就有一些麻烦了。所以asp:Table可以解决这些。

注意:这里讲的是标准的table控件,不是html里的table:

前台只要拖一个Table控件给一个ID就可以了,我们的操作都可以在后台进行。

 "table" runat="server" BorderColor="#000000" BorderStyle="Solid" BorderWidth="0px" Caption="表格的标题" CellPadding="0" CellSpacing="0" Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Size="30px" Font-Strikeout="False" Font-Underline="False" Width="980px">
 </asp:Table>

这里的Table是一个控件,可以在后台对改表格进行行列的操作。

添加一行使用的是TableRow类,这个类相当于HTML标准中table标签内部的tr标签,如果要添加一行,我们可以这样写:

 TableRow headUpTr = new TableRow();
 table.Rows.Add(headUpTr)

这样就在table中添加了一行。

在一行中添加一列的话方法同上,使用的是TableCell,同理,这个类也相当于HTML中的td标签。Table、TableRow、TableCell三个类组成了一个完整的表格。

 TableCell td = new TableCell();
 headUpTr.Cells.Add(td);

TableCell的相关属性可以更改表格的样式,在对数据的结果集筛选的时候可以根据不同的值在循环输出中对表格进行个性化的设置。

最常用的TableCell属性有:

ColumnSpan;用于列RowSpan;用于跨行Text;用于写字符串Controls.Add();方法则是像单元格中输出控件用的。Attributes.Add();这个则是给单元格增加属性的,增加html标签支持的属性,例如Style、Align等等。

  有些时候会遇到很多重用的情况,所以我会将一些操作写成一个方法,以方便调用,例如:

 1 private void addtr(ref TableRow tr, string data, int colspan, int rowspan, string align, int width, string fontsize, int height,string style)
 2   {
 3       TableCell td = new TableCell();
 4       td.Width = width;
 5       td.Attributes.Add("align", align);
 6       td.Attributes.Add("style", fontsize);
 7       td.CssClass = style;
 8       td.ColumnSpan = colspan;
 9       if (height != 20)
10      {
11          td.Height = height;
12      }
13      td.RowSpan = rowspan;
14      td.Text = data.ToString();
15      tr.Cells.Add(td);
16  }

 

我想应该还会有更简单且更有效率的方法,但是目前我的能力有限,还是只能找到这样的方式。虽然不是很高深的东西,但是对于初学者来说,或许会有一些帮助的。

相关文章
|
7月前
|
前端开发 C# 数据库
.NET中使用BootstrapBlazor组件库Table实操篇
.NET中使用BootstrapBlazor组件库Table实操篇
177 0
|
IDE API 开发工具
拦截|篡改|伪造.NET类库中不限于public的类和方法
本文除了回顾拦截.NET类库中的方法,实现方法参数的篡改、方法返回结果的伪造,再着重介绍.NET类库中非public类及方法如何拦截。
拦截|篡改|伪造.NET类库中不限于public的类和方法
|
2月前
|
开发框架 .NET C#
C#|.net core 基础 - 删除字符串最后一个字符的七大类N种实现方式
【10月更文挑战第9天】在 C#/.NET Core 中,有多种方法可以删除字符串的最后一个字符,包括使用 `Substring` 方法、`Remove` 方法、`ToCharArray` 与 `Array.Copy`、`StringBuilder`、正则表达式、循环遍历字符数组以及使用 LINQ 的 `SkipLast` 方法。
|
2月前
.NET 4.0下实现.NET4.5的Task类相似功能组件
【10月更文挑战第29天】在.NET 4.0 环境下,可以使用 `BackgroundWorker` 类来实现类似于 .NET 4.5 中 `Task` 类的功能。`BackgroundWorker` 允许在后台执行耗时操作,同时不会阻塞用户界面线程,并支持进度报告和取消操作。尽管它有一些局限性,如复杂的事件处理模型和不灵活的任务管理方式,但在某些情况下仍能有效替代 `Task` 类。
|
2月前
|
API
使用`System.Net.WebClient`类发送HTTP请求来调用阿里云短信API
使用`System.Net.WebClient`类发送HTTP请求来调用阿里云短信API
36 0
|
4月前
|
缓存 程序员
封装一个给 .NET Framework 用的内存缓存帮助类
封装一个给 .NET Framework 用的内存缓存帮助类
|
6月前
|
存储 Go C#
【.NET Core】深入理解IO之File类
【.NET Core】深入理解IO之File类
98 6
|
6月前
|
存储 开发框架 缓存
【.NET Core】你真的了解HttpRuntime类吗
【.NET Core】你真的了解HttpRuntime类吗
64 0
|
7月前
|
消息中间件
.NET 中 Channel 类简单使用
`System.Threading.Channels` 提供异步生产者-消费者数据结构,用于.NET Standard上的跨平台同步。频道实现生产者/消费者模型,允许在任务间异步传递数据。简单示例展示如何创建无界和有界频道,以及多生产者和消费者共享频道的场景。频道常用于内存中的消息队列,通过控制生产者和消费者的速率来调整系统流量。
|
7月前
|
SQL 数据库连接 数据库
VB.NET 中使用SqlConnection类连接到Microsoft SQL Server数据库的详细步骤
VB.NET 中使用SqlConnection类连接到Microsoft SQL Server数据库的详细步骤
323 0