DataNavigateUrlFormatString的使用方法

发表于:2007-06-30来源:作者:点击数: 标签:
你首先要明确一个概念,DataNavigateUrlFormatString其实是执行一个函数,他要得到的是一个字符串,所以在上午的帖子中,我建议您用%= %,而不是%%,再有您可以自己写一个函数用%# %调用 下面是我写的一个例子 asp:DataList id=TopicList width=98% ItemStyle
你首先要明确一个概念,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="<%=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>

原文转自:http://www.ltesting.net