使用链接显示详细页
在以往UltraDev的使用过程中要链接到显示详细数据页一般都是通过“Go To Detail Page”服务器行为,而NET环境下服务器行为视窗中却没有提供该行为,那么链接该如何做呢?答案还是在DataGrid控件的设置中。
为了方便说明,我们把细节页的要素也放在default.aspx页面中。
先建立一个记录集“DataSet2”用来显示详细信息的,建立方法很简单,如图只是设置序号为URL传递过来的“xid”参数。
在页面中插入一个表格,将“DataSet2”记录集中的字段依次绑定到合适的位置,还有不要忘了使用Server Behaviors → Show Region → Show If DateSet Is Not Empty行为设置当“DataSet2”记录集为空的时候隐藏表格,如下图。
完成后我们要再次编辑DataGrid控件,在对话框中设置序号为传递“xid”参数的链接,在“Columns”域中选择“序号”,然后点击下方的“Change Column Type”转换列类型按钮选择“Hyperlink”超链接项
在弹出的“Hyperlink Culumn”对话框中如下设置
Title:“序号”——显示列的标题
Hyperlink Text:——超链接文字,这里包括有三个项目
Static Text:——你可以在此写入文字作为链接
Data Field:“序号”——你可以选择记录集中的字段来作为链接
Format String:——你可以定义字段的显示格式
Linked Page:——链接到的页面,这里也有三个项目
Static URL:——链接到静态的页面
Date Field:“序号”——这里是指选择“序号”字段作为传递到下页的参数值
Format String:“default.aspx?xid={0}”——使用右边的按钮选择要链接到的页,我们的细节记录也在本页就选择“default.aspx”就可生成前面的字符串,需要注意的是自动生成的参数名称是中文的“序号”文字,我们在建立“DataSet2”记录集时指定参数名为“xid”,所以这里要手工修改。
完成后如下图
点击“OK”返回存盘测试一下吧。
其它的一些补充
1.在DataGrid控件中我们已经用过了四种显示类型,也基本知道了它们的使用方法,还剩下一种是“Free Form”。这是一种比较自由的显示类型,你可以在这里加入合并几个动态记录或者在其中加入文本,也可以是表达控件,总之这是提供的一个灵活显示手段。
2.大家应该还记得我们在编辑“Hyperlink Culumn”超链接对话框时有个“Format String”项目设置为空的,如果又需要又该如何设置呢?翻阅了asp.net文档我们作如下尝试,在此框内加入字符串“{0:X}”,如下图
存盘后在浏览器中我们可以看见下图
“序号”字段是以十六进制格式显示数值的,原因是在格式字符“X”上,下面是几个格式字符说明
C 以货币格式显示数值。
D 以十进制格式显示数值。
E 以科学记数法(指数)格式显示数值。
F 以固定格式显示数值。
G 以常规格式显示数值。
N 以数字格式显示数值。
X 以十六进制格式显示数值。
3.如果需要“序号”字段的链接是以新建窗口形式打开的,那该如何呢?这次DataGrid控件中似乎没有提供此功能,我们试着改改源码吧。转到源码视窗,找到对应“序号”字段的代码:
DataNavigateUrlField="序号"DataNavigateUrlFormatString="default.aspx?xid={0}"DataTextField="序号"Visible="True"HeaderText="序号"/>在代码最后加上“Target="_new"”字符串,使之成为DataNavigateUrlField="序号"DataNavigateUrlFormatString="default.aspx?xid={0}"DataTextField="序号"Visible="True"HeaderText="序号"Target="_new" />好了,这样就可以了,当你再次点击序号上的链接记录就是以新窗口形式出现了。Dreamweaver MX中ASP.NET环境下的DataGrid控件基础用处就这些吧,当然你可以利用修改代码获得更多功能,还是老话,Dreamweaver MX在你开发ASP.NET时可以提供效率,而目前所具有功能的还十分不足,所以多看看源码、了解源码还是使用好Dreamweaver MX的关键。