Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I conditionally control the visibility of a control in ASP.NET?

Tags:

html

c#

css

asp.net

I've got an asp:Image. I want this control to display, only if <%#Eval("Image")%> is not null.

I do not know how to write this conditional statement. What I'm trying to say is something like this (if the value of 'image' taken from the data structure is not null, then display the image. Otherwise, do not):

<%#Eval("Image")%> != 0 ? <asp:Image ID="image" runat="server"/>

I'm aware that this is not the syntax - consider it as pseudocode, as I have never had to write a conditional statement in the markup.

Any ideas? :)

like image 693
Dot NET Avatar asked Dec 21 '22 06:12

Dot NET


1 Answers

You can bind the Visible property of your control to the expression and call DataBind() while the page is loading:

<asp:Image runat="server" id="image" Visible='<%#Eval("Image") != null %>' />

If you are not using server controls and want to show/hide simple markup, you can simply enclose it in an if statement:

<% if ( condition ) { %>
    <img src='<%= linkToImageSource %>' />
<% } %>
like image 81
mmx Avatar answered May 12 '23 23:05

mmx