2012-01-11 5 views
0

rotator 컨트롤에 조건부로 HTML div를 추가하고 싶습니다. 내가 잘못 어디 다음 코드를 사용하고 있지만 말한다 DataBinder.Eval(Container.DataItem, "COL_ID")div 추가 조건부 설명 현재 컨텍스트에 이름 컨테이너가 없습니다.

<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을 사용하고 있습니다.

안부, 캐쉬

답변

0

오류는이 데이터 항목이 컨트롤에 바인딩 된 항목에 존재하지 않는 것을 의미한다.

예를 들면. 테이블에 바인딩하는 경우 테이블에 "Col_ID"라는 열이 있어야합니다. 그렇지 않으면 오류가 발생합니다.

컨트롤을 데이터 소스에 바인딩하는 코드를 추가 할 수 있습니까?

+0

. rtrList.DataSource = list; 디자인 타임에 오류가 발생했습니다 – Kash

+0

어떻게 목록을 설정하고 있습니까? – OpenR

+0

list는 데이터베이스에서 채워지는 DataTable입니다. – Kash

0

사용 대신하는 경우의 구문 : 데이터 소스 속성을 사용하여 바인딩

<%# (Convert.ToInt32(DataBinder.Eval(Container.DataItem, "COL_ID")) % 2 == 0) ? "<div></div>" : "" %> 
관련 문제