Используйте значение из DataBinder.Eval, чтобы показать изображение

Я использую Repeater и DataBinder.Eval, чтобы получить значения из кода:

<asp:Repeater id="Repeater1" runat="server">
     <ItemTemplate>
        <ul data-role="listview" data-divider-theme="f" data-inset="true">
         <li data-theme="c">
          <%# DataBinder.Eval(Container.DataItem, "Email")%> 
         </li>
        </ul>
     </ItemTemplate>
</asp:Repeater>

Email возвращает истину или ложь. Если значение истинно, я хочу показать image_open.png и если это значение Email ложно чем image_close.png

Есть ли что-то вроде:

<% if (DataBinder.Eval(Container.DataItem, "Email").Equals("true"))%>
   <img src="image_open.png" />
<% else %>
   <img src="image_close.png" /> 

1 ответ

Решение

Вы можете использовать условный оператор:

<img src='<%# ((bool)Eval("Email")) ? "image_open.png" : "image_close.png" %>' />
Другие вопросы по тегам