ASP.Net WebMatrix中Datagrid使用模板列对数据显示进行排版。

王朝asp·作者佚名  2006-01-08
宽屏版  字体: |||超大  

在微软的免费ASP.Net开发工具ASP.Net WebMatrix中我们可以轻松的在datagrid中使用模板列来对数据进行显示。

本例使用到SQL Server2000自带的pubs数据库。

首先,打开ASP.Net WebMatrix建立一个新文件,类型选择“DATA PAGES”中的“Simple Data Report”,然后切换到CODE视图,默认的数据库连接字符串为:

Dim ConnectionString As String ="server=(local);database=pubs;trusted_connection=true"

改为:

Dim ConnectionString As String ="server=(local);database=pubs;uid=sa;pwd=sa"

然后换回Design视图,选中datagrid,然后点击右边工具栏中的“属性生成器”(如图)

进入“属性生成器”之后选择列,将“运行时自动生成列”选项去掉,然后添加一个“超级链接列”到“选定的列”之中。在hyperlinkcolumn属性的“文本字段”中填入City(这是pubs数据库中的一个字段,这里我们拿它做演示),再点击下面的“将此列转换为模板列”。然后转向“常规”属性页,将“显示页眉”去掉。再转向“边框”属性页,将“网格线改为无”,点确定退出。接着进入“自动套用格式”属性框,移除自动套用格式,这样基本上从外观看不出datagrid的影子了。

这里我们假设是点击city而链接到list.aspx?city=城市名的页面,呵呵,有点像新闻的链接一样,其实原理都一样。

切换到HTML视图,开发工具已经帮我们生成了基本的模板代码:

<asp:TemplateColumn>

<ItemTemplate>

<asp:HyperLink runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.city") %>' ></asp:HyperLink>

</ItemTemplate>

</asp:TemplateColumn>

要加入链接我们需要手工加入代码,再加入一些修饰效果:

<asp:TemplateColumn>

<ItemTemplate>

<img src="xxx.gif">

<asp:HyperLink runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.city") %>' NavigateUrl='<%# "list.aspx?city="& DataBinder.Eval(Container, "DataItem.city") %>' Target="_blank"></asp:HyperLink>

</ItemTemplate>

</asp:TemplateColumn>

这样的话,点击运行页面,已经可以看到效果。 (是不是看不出datagrid的原始风格了?)

本文只是介绍了ASP.Net WebMatrix的一方面使用方法,只要你想象更丰富一定可以通过模板列将datagrid改造的更加完美。

注:文中使用操作数据库的SQL语句为系统自动生成,没有进行更改。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有