3

Web サイトの jquery スライダー用の特定のテンプレートを持つリピーター コントロールがあります。スライドの詳細を表示するテーブル名 tbl_Slide_master があります。このテーブルには、リピーター コントロールで画像プロパティを設定するための int データ型として、Img_height と Img_width のような 2 つの列があります。詳細については、リピーターコントロールを含めます

<asp:Repeater ID="SliderRepeater" runat="server">
                  <ItemTemplate>
                  <li>
                   <p class="img"><asp:Image ID="Img_Slide" runat="server" ImageUrl='<%# "images/"+ Eval("ImageName")%>' Height='<%#Eval("Img_height")%>' Width='<%#Eval("Img_width")%>'/></p>
                   <div class="button"><span class="right_but"><img src="images/l_arrow.gif" alt="picture" width="84" height="28" border="0" /><img src="images/r_arrow.gif" alt="picture" width="84" height="28" border="0" /></span></div>
                   <h2><asp:Label ID="lbl_slideheadertext" runat="server" Text='<%# Eval("Header_text")%>'></asp:Label></h2>
                   <p><asp:Label ID="lbl_slidetext" runat="server" Text='<%# Eval("Para_text")%>'></asp:Label></p>
                  </li>
                  </ItemTemplate>
                  </asp:Repeater>

プロジェクトを実行すると、「指定されたキャストが無効です」のようなエラーが発生しました。tbl_slide_master テーブルから画像の高さと幅のプロパティを評価できません。ただし、画像コントロールから高さと幅のプロパティを単純に削除すると、画像は元のh * wで表示されます。Height='<%#Eval("Img_height")%>' と Width='<%#Eval("Img_width")%> に間違いがありますか...

また、Height='<%#Eval("Img_height") & "px"%> のようなものを使用できますが、「演算子 '&' はタイプ 'オブジェクト' のオペランドに適用できず、 'ストリング'"

更新されたソリューション

わかりました、html 画像コントロールを使用できるので、高さと幅を結合するために px は必要ありません。

<asp:Repeater ID="SliderRepeater" runat="server">
                  <ItemTemplate>
                  <li>
                   <%--<p class="img"><asp:Image ID="Img_Slide" runat="server" ImageUrl='<%# "images/"+ Eval("ImageName")%>' Height='<%# Eval("Img_height")&"px"%>' Width='<%# Eval("Img_width")&"px"%>'/></p>--%>
                   <p class="img"><img id="Img_Slide" src='<%# "images/"+ Eval("ImageName")%>' width='<%#Eval("Img_width")%>' height='<%#Eval("Img_height")%>'/></p>
                   <div class="button"><span class="right_but"><img src="images/l_arrow.gif" alt="picture" width="84" height="28" border="0" /><img src="images/r_arrow.gif" alt="picture" width="84" height="28" border="0" /></span></div>
                   <h2><asp:Label ID="lbl_slideheadertext" runat="server" Text='<%# Eval("Header_text")%>'></asp:Label></h2>
                   <p><asp:Label ID="lbl_slidetext" runat="server" Text='<%# Eval("Para_text")%>'></asp:Label></p>
                  </li>
                  </ItemTemplate>
                  </asp:Repeater>
4

0 に答える 0