2010-12-15 60 views
3

我想基於一個databound屬性的值顯示一個ListView控件內的圖像。我試過兩種方法(一次一個),並且都返回了「服務器標籤格式不正確」的錯誤。考慮下面的代碼。內聯腳本條件語句在一個ListView內

<ItemTemplate> 
    <div class="left"> 

    <!-- Method 1 --> 
    <img src="media-play-button.png" alt="Play" class="mediaplay noborder" runat="server" visible="<%# Eval("MediaType").ToString() == "video" %>" /> 

    <!-- Method 2 --> 
    <%# if (((MediaLink)Container.DataItem).MediaType == "video") { %> 
    <img src="media-play-button.png" alt="Play" class="mediaplay noborder" /> 
    <%# } %> 

    </div> 
</ItemTemplate> 

回答

7

方法1

而不是使用"visible屬性值,使用'

<img src="media-play-button.png" alt="Play" class="mediaplay noborder" 
    runat="server" visible='<%# Eval("MediaType").ToString() == "video" %>' /> 

使用"導致<%# Eval(之後終止字符串。

方法2

不要使用編碼塊(<%%>)綁定表達式(<%#%>):

<% if (((MediaLink)Container.DataItem).MediaType == "video") { %> 
<img src="media-play-button.png" alt="Play" class="mediaplay noborder" /> 
<% } %> 
+1

真棒,謝謝。我總是想念一些世俗的細節! – esvendsen 2010-12-15 17:52:36