你首先要明确一个概念,DataNavigateUrlFormatString其实是执行一个函数,他要得到的是一个字符串,所以在上午的帖子中,我建议您用<%= %>,而不是<%%>,再有您可以自己写一个函数用<%# %>调用
下面是我写的一个例子
<asp:DataList id="TopicList" width="98%" ItemStyle-Cssclass="Normal" DataKeyField="ItemID" runat="server" EnableViewState="False" OnItemCommand="TopicList_Select">
<ItemTemplate>
<asp:ImageButton id="btnSelect" ImageUrl='<%# NodeImage((int)DataBinder.Eval(Container.DataItem, "TotalChild")) %>' CommandName="select" runat="server" />
<img border=0 src="<%# FormatFace((string)DataBinder.Eval(Container.DataItem, "Face")) %>" />
<asp:hyperlink Text='<%# DataBinder.Eval(Container.DataItem, "Title") %>' NavigateUrl='<%# FormatUrl((int)DataBinder.Eval(Container.DataItem, "ItemID")) %>' Target="_new" runat="server" />
, 由
<%# DataBinder.Eval(Container.DataItem,"CreatedByUser") %>
帖于
<%# DataBinder.Eval(Container.DataItem,"CreatedDate", "{0:g}") %>
【<%# DataBinder.Eval(Container.DataItem,"Bytes") %>Bytes】
(<%# DataBinder.Eval(Container.DataItem,"TotalChild") %>)
</ItemTemplate>
<SelectedItemTemplate>
<asp:ImageButton id="btnCollapse" ImageUrl="~/images/minus.gif" runat="server" CommandName="collapse" />
<img border=0 src="<%# FormatFace((string)DataBinder.Eval(Container.DataItem, "Face")) %>" />
<asp:hyperlink Text='<%# DataBinder.Eval(Container.DataItem, "Title") %>' NavigateUrl='<%# FormatUrl((int)DataBinder.Eval(Container.DataItem, "ItemID")) %>' Target="_new" runat="server" />
, 由
<%# DataBinder.Eval(Container.DataItem,"CreatedByUser") %>
帖于
<%# DataBinder.Eval(Container.DataItem,"CreatedDate", "{0:g}") %>
【<%# DataBinder.Eval(Container.DataItem,"Bytes") %>Bytes】
(<%# DataBinder.Eval(Container.DataItem,"TotalChild") %>)
<asp:DataList id="DetailList" ItemStyle-Cssclass="Normal" datasource="<%# GetThreadMessages() %>" runat="server">
<ItemTemplate>
<%# Indent((Int16)(DataBinder.Eval(Container.DataItem, "Layer"))) %>
<img src=http://www.163design.net/n/a/"<%=Request.ApplicationPath%>/images/1x1.gif" height="15">
<img border=0 src="<%# FormatFace((string)DataBinder.Eval(Container.DataItem, "Face")) %>" />
<asp:hyperlink Text='<%# DataBinder.Eval(Container.DataItem, "Title") %>' NavigateUrl='<%# FormatUrl((int)DataBinder.Eval(Container.DataItem, "ItemID")) %>' Target="_new" runat="server" />
, 由
<%# DataBinder.Eval(Container.DataItem,"CreatedByUser") %>
帖于
<%# DataBinder.Eval(Container.DataItem,"CreatedDate", "{0:g}") %>
【<%# DataBinder.Eval(Container.DataItem,"Bytes") %>Bytes】
</ItemTemplate>
</asp:DataList>
</SelectedItemTemplate>
</asp:DataList>
DataNavigateUrlFormatString的使用方法
80酷酷网 80kuku.com