考虑以下代码片段:
<asp:TemplateField HeaderText="Item Data">
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "ItemData1") %>
<br />
<%# DataBinder.Eval(Container.DataItem, "ItemData2") %>
</ItemTemplate>
</asp:TemplateField>
我需要重构它,以便如果 ItemData2 为空,<br />
不渲染
我不确定如何才能做到这一点。
编辑:我尝试添加如下条件:
<% if(DataBinder.Eval(Container.DataItem, "ItemData2") != null) { %>
<br />
<%# DataBinder.Eval(Container.DataItem, "ItemData2") %>
<% } %>
它没有用,而且看起来真的很丑!
最佳答案
在 DataBinder.Eval 中,您可以像下面那样传递您的条件,这对您有用。
<%#( DataBinder.Eval(Container.DataItem,"Item1)==null ?DataBinder.Eval(Container.DataItem,"Item1"):
DataBinder.Eval(Container.DataItem,"Item2"))%>
关于c# - 使用 ASP.NET 进行条件 html 呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15407710/