操作回顾 在第步之后创建了一个带有图片文件名称的页面而不是实际的图片这是因为当VWD生成DataList控件的默认模板时它看到在PictureURL字段中有文本所以创建了一个Label控件如下代码所示
<asp:DataList ID=DataList runat=server DataSourceID=SqlDataSource RepeatColumns= RepeatDirection=Horizontal> <ItemTemplate> <asp:Label ID=Label runat=server Text=<%# Eval(PictureURL) %>></asp:Label>
在下一步中将Label控件替换为Image控件如下面的代码所示这使得浏览器显示图片但是显示的是一个红色的叉号图标表示无法找到图片 <asp:Image ID=Image runat=server ImageUrl=<%# Eval(PictureURL) %>/> 问题是APNET 页面默认情况下将在它所在的同一文件夹下寻找图片文件而这里的图片保存在一个名为Matchlmages的不同文件夹中所以可以使用Eval方法的功能添加图片文件名称的相对路径添加了另一个参数该参数显示任何从数据库中获得的文本数据在这里您添加了路径这种语法有两个新的诀窍首先在格式化参数中使用了波浪号它表示站点的根目录在把站点部署到另一台服务器的时候将不需要修改该路径其次语法{}指示一个插入值的位置该值来源于数据库因此类似下面代码所示的语法在用作ImageURL之前将被解释为C:\BegASPNET\WroxUnitedlMatchImages\aaronson jpg <asp:Image ID=Image runat=server ImageUrl=<%# Eval(PictureURL~/MatchImages/[]) %>/> 练习的最后对模板进行了一些修改记住在修改模板中实际显示数据的控件之前必须首先进入Edit Templates模式如果您困惑于试图选择或修改Label和Image控件而VWD却没有做出任何反应这是因为您忘记进入Edit Templates模式您学习了怎样选中然后删除或者移动字段 ASPNET 入门教程完整版 [] [] [] [] |