0

ローテーター コントロールに条件付きで HTML div を追加したい。次のコードを使用していますが、「名前コンテナーは現在のコンテキストに存在しません」と表示されますDataBinder.Eval(Container.DataItem, "COL_ID")

<telerik:RadRotator ID="rtrList" runat="server" Width="830px" Height="100px"
                FrameDuration="10" RotatorType="ButtonsOver" ScrollDuration="450" WrapFrames="true"
                ItemWidth="100" ItemHeight="80" >
                <ItemTemplate>
                    <asp:HiddenField ID="hdfId" runat="server" Value='<%# Eval("COL_ID") %>' />

                    <div id="div" runat="server" title='<%# Eval("NAME") %>' class="widget_item">

                        <span>
                            <%# Eval("TITLE") %>
                        </span>
                    </div>

                <%if (Convert.ToInt32(DataBinder.Eval(Container.DataItem, "COL_ID")) % 2 == 0)

                   {%>

                    <div></div>

                <%} %>    

                </ItemTemplate>


            </telerik:RadRotator>

私が間違っているところを教えてください。初めて DataBinder.Eval と Container.DataItem を使用しているためです。

よろしく、カッシュ

4

2 に答える 2

0

このエラーは、このデータ項目がコントロールにバインドされた項目に存在しないことを意味します。

例えば。テーブルにバインドしていた場合、テーブルには「Col_ID」という列が含まれている必要があります。そうしないと、エラーがスローされます。

コントロールをデータ ソースにバインドするためのコードを追加できますか?

于 2012-01-11T18:00:20.760 に答える
0

if の代わりに次の構文を使用します。

<%# (Convert.ToInt32(DataBinder.Eval(Container.DataItem, "COL_ID")) % 2 == 0) ? "<div></div>" : "" %>
于 2014-09-16T08:56:36.780 に答える