【问题标题】:ASP.net GridView - Use If-Statement in HeaderText property of BoundFieldASP.net GridView - 在 BoundField 的 HeaderText 属性中使用 If-Statement
【发布时间】:2010-08-26 20:53:38
【问题描述】:

我可以这样做吗:

    <asp:BoundField DataField="Field1" 
HeaderText='<% IF(Eval("Field2").ToString().SubString(3,4).Equals("Text3"),"Text1","Text2") %>'
SortExpression="Field1" />

当Field2的第4-7个字符= Text3时,Field1的标题为Text1,否则为Text2?

我试过了,它只是把 "''" 作为实际的标题字符串!

提前致谢!

【问题讨论】:

    标签: asp.net gridview header if-statement


    【解决方案1】:

    Eval() 语句仅在数据绑定上下文中有意义。如果您使用数据绑定语法 (&lt;%# /*...*/ %&gt;),您会发现,标题文本不提供数据绑定上下文。毕竟,零对多行只有一个标题。

    您可以在代码隐藏中强制设置标题文本:

    myGrid.Columns[columnIndex].HeaderText = //...
    

    【讨论】:

    • 哦,是的。好点子。这使得 headertext 依赖于 Eval() 绝对没有意义。谢谢你泼我头上的冷水,把我叫醒。 +1
    猜你喜欢
    • 1970-01-01
    • 2010-09-23
    • 2011-06-25
    • 1970-01-01
    • 2011-10-10
    • 1970-01-01
    • 2011-12-06
    • 1970-01-01
    • 2021-01-17
    相关资源
    最近更新 更多