2010-12-15 17 views
3

私は、データバインドされたプロパティの値に基づいてListViewコントロール内に画像を表示しようとしています。私はこれを行う2つの方法(一度に1つずつ)を試みましたが、どちらも "サーバータグが正しく形成されていません"というエラーを返しました。以下のコードを考えてみましょう。代わりvisible属性値の"を使用リストビュー内のインラインスクリプト条件文

'を使用する:

<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

<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