Best Technique for Multiple Eval Fields in Gridview ItemTemplate?

前端 未结 4 1272
执笔经年
执笔经年 2020-12-24 11:53

What is the best way to use multiple EVAL fields in a GridView ItemTemplate?

Looking to have some control over formatting for appearance as well as setting up hyperl

相关标签:
4条回答
  • 2020-12-24 12:16

    I have a easiest way to do this same thing...

    <asp:Label ID="lblName" runat="server" Text='<%#Eval("FirstName").ToString() +", "+ Eval("LastName").ToString() %>'></asp:Label>
    

    .

    <%#Eval("FirstName").ToString() +", "+ Eval("LastName").ToString() %>
    

    Here both objects are converted into string the concatenate them.

    0 讨论(0)
  • 2020-12-24 12:21

    I had previously used this (bad, I know):

    <%# Eval("Name1", "{0} - ")%> <%#Eval("Name2")%>
    

    Result = 'John - Smith'

    But just discovered that I can also put TWO (or more) Evals in the same data-bound group:

    <%#Eval("Name1") & " - " & Eval("Name2")%>
    

    Result = 'John - Smith'

    Or

    <%# "First Name - " & Eval("Name1") & ", Last Name - " & Eval("Name2")%>  
    

    Result = 'First Name - John, Last Name - Smith'

    0 讨论(0)
  • 2020-12-24 12:41

    Eval and Bind both suck.
    Why get the property through reflection? You can access it directly like this:

    ((MyObject)Container.DataItem).MyProperty
    

    It's not like the object is unknown to you at runtime. That's my two cents, anyhow.

    0 讨论(0)
  • 2020-12-24 12:42

    Even clearer, IMO, is:

    <%# String.Format("{0} - {1}", Eval("Name1"), Eval("Name2")) %>
    
    0 讨论(0)
提交回复
热议问题