2012-06-26 2 views
0

우리는 RadGrid에 일부 telerik : GridTemplateColumns가 있습니다. 우리는 데이터 소스를 얻고 그리드를 바인딩합니다. 첫 번째 페이지 그리드의 경우 일관성이 있습니다. 그러나 페이지를 변경하면 그리드의 다른 열은 새로운 값을 갖지만 itemtemplate 열은 첫 번째 페이지의 값을 유지합니다.Telerik : radgrid onItemDatabound 이벤트

그리드 디자인 코드 :

<telerik:RadGrid ID="rgvTest" runat="server" AllowFilteringByColumn="false" 
              AllowPaging="True" AllowSorting="True" MasterTableView-ShowHeadersWhenNoRecords="false" 
              AllowCustomPaging="false" AutoGenerateDeleteColumn="false" AllowMultiRowSelection="true" 
              AutoGenerateEditColumn="false" GridLines="None" ShowGroupPanel="True" OnItemDataBound="rgvTest_ItemDataBound" 
              OnPageIndexChanged="rgvTest_PageIndexChanged" OnSortCommand="rgvTest_SortCommand" 
              ClientSettings-ClientEvents-OnRowDblClick="GridRowDoubleclick" > 

<Columns> 
                <telerik:GridClientSelectColumn UniqueName="ClientSelectColumn" ItemStyle-Width="20px" HeaderStyle-Width="20px"/> 
                <telerik:GridTemplateColumn HeaderImageUrl="../Images/priority_icon.png" UniqueName="Priority1" 
                 HeaderTooltip="Priority"> 
                 <ItemStyle Width="20px" Wrap="false" /> 
                 <HeaderStyle Width="20px" Wrap="false" /> 
                 <ItemTemplate> 
                  <asp:Image ID="PriorityImage" runat="server" /> 
                 </ItemTemplate> 
                </telerik:GridTemplateColumn> 
</Columns> 

고려 페이지 크기는 내가 OnItemdataBound 이벤트가 부하에 처음 10 개 개의 레코드라는 것을 가지고, 디버깅 후 10 로 설정됩니다. 페이지 변경 후, 20 회 호출되지만 첫 페이지와 두 번째 페이지의 20 레코드에 대해 insted됩니다. 처음 10 레코드는 두 번 호출됩니다 ... 이상하지만 사실입니다. 누군가가 어떤 아이디어라도 가지고 있다면 저를 도와주세요.

답변

0

해상도가 있습니다. 실제로 Item을 바인딩하는 동안 Item.dataIndex의 Item.ItemIndex 속성이 사용되었습니다. ItemIndex 값은 0에서 10까지이며 DataIndex는 0에서 DataIndex의 길이까지 다양합니다 ...

+0

0-1o (여기서 10은 페이지 크기입니다 ..) – Chat

관련 문제