Asp.net 具有多个变量的ListView评估项模板
我试图打印出一行,其中包含ListView控制器项模板中的图像标记。我尝试过多种方法,但都没有成功Asp.net 具有多个变量的ListView评估项模板,asp.net,.net,listview,data-binding,Asp.net,.net,Listview,Data Binding,我试图打印出一行,其中包含ListView控制器项模板中的图像标记。我尝试过多种方法,但都没有成功 <ItemTemplate> <tr id="itemTemplate" runat="server"> <td> <asp:Literal ID="litImg" runat="server" Text='<%= "<img src="" & PathtoImg & "ProcessImage.aspx
<ItemTemplate>
<tr id="itemTemplate" runat="server">
<td>
<asp:Literal ID="litImg" runat="server" Text='<%= "<img src="" & PathtoImg & "ProcessImage.aspx?Img=" & Eval("Img") & "&PID="Resize"" alt=""ProductID"" />")))) %>' />
</td>
<td>
<asp:Literal ID="litID" runat="server" Text='<%# Eval("Department") %>' />
</td>
</tr>
</ItemTemplate>
第一个eval不起作用(有点像集群),第二个简单的行起作用。
它不会出错,但会显示
显然,这是行不通的
<img src="<%= PathtoImg %>ProcessImage.aspx?Img=<%= Eval("Img")%>&PID=Resize" alt="ProductID" />
ProcessImage.aspx?Img=&;PID=Resize“alt=”ProductID“/>
因为它给出了错误
诸如Eval()、XPath()和Bind()之类的数据绑定方法只能是
在数据绑定控件的上下文中使用。"
这是我第一次使用Listview,我对这些模板非常不熟悉。我想要的-在图像标记的src中显示带有服务器变量的数据项-可能吗?使用代码隐藏函数或runat=“server”您的HTML控件: 标记:
<ItemTemplate>
<tr id="itemTemplate" runat="server">
<td>
<asp:Image id="Image1" runat="server"
ImageUrl="<% GetImageUrl(Eval("Img"), PathToImg))%>"/>
</td>
</tr>
</ItemTemplate>
protected string GetImageUrl(object img, string pathToImg)
{
//example business logic, change for your needs
//build your url etc....
string imgPathFromDb = (string)img;
return PathToImg + imgPathFromDb;
}
其他选择:
<img runat="server" src="<%# PathtoImg %>ProcessImage.aspx?Img=<%# Eval("Img")%>&PID=Resize" alt="ProductID" />
ProcessImage.aspx?Img=&;PID=Resize“alt=”ProductID“/>
叹气……请告诉我这没那么容易。去试试这个,我会让你知道它是否有效。我有时会很胖,但我最终还是成功了。我基本上在codebehind中构建了整个图像标记,并这样调用它:使用图像标记和发送src都不起作用。非常感谢。