【问题标题】:Combine/Concat multiple Evals inside DataList在 DataList 中合并/连接多个 Eval
【发布时间】:2013-03-18 09:05:01
【问题描述】:

我正在使用DataList,我需要在一列中显示两个字段的组合,我需要将列显示为Name1(Name2)

这是我的代码:

<asp:DataList ID="dlistDetails" runat="server" DataKeyField="KeyID"
              RepeatColumns="3" Width="100%" 
              AlternatingItemStyle-BackColor="Wheat" CaptionAlign="Top">
    <ItemTemplate>
        <asp:Label ID="lbl" runat="server" Text= '<%#Eval("Name1")%(<%#Eval("Name2") %>)' /> 
    </ItemTemplate>
</asp:DataList>

我的GridView 也是如此,它显示了结果,

【问题讨论】:

    标签: c# datalist itemtemplate datalistitem


    【解决方案1】:

    只需将现有代码调整为:

    <asp:DataList ID="dlistDetails" runat="server" DataKeyField="KeyID"
                  RepeatColumns="3" Width="100%" 
                  AlternatingItemStyle-BackColor="Wheat" CaptionAlign="Top">
        <ItemTemplate>
            <asp:Label ID="lbl" runat="server" Text='<%# Eval("Name1") + "(" +  Eval("Name2") + ")"%>' /> 
        </ItemTemplate>
    </asp:DataList>
    

    【讨论】:

      【解决方案2】:

      你可以试试这段代码

      <ItemTemplate>
              <asp:Label ID="lbl" runat="server" Text='<%# String.Format(
            "return {0} % {1}", 
             Eval("Name1"), 
             Eval("Name2")) %>' /> 
      
          </ItemTemplate>
      

      【讨论】:

        【解决方案3】:

        我有一个最简单的方法来做同样的事情......

        <asp:Label ID="lbl" runat="server" Text='<%#Eval("Name1").ToString() +", "+ Eval("Name2").ToString() %>'></asp:Label>
        

        .

        <%#Eval("Name1").ToString() +", "+ Eval("Name2").ToString() %>
        

        这里两个对象都被转换成字符串连接起来。

        【讨论】:

        • 是的,我还发现这是最简单的形式。
        • 欢迎.. neeraj-bisht
        猜你喜欢
        • 2021-05-23
        • 1970-01-01
        • 2012-12-17
        • 2020-09-28
        • 2013-04-19
        • 1970-01-01
        • 2019-08-12
        • 2021-11-21
        • 2019-12-13
        相关资源
        最近更新 更多