我们有一个带有一些 Telerik:GridTemplateColumns 的 RadGrid。我们得到一个数据源并绑定网格。对于第一页网格行为是一致的。但是在页面更改后,网格中的其他列会获得新值,但 itemtemplate 列会保留第一页的值。
网格设计代码:
<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>
考虑到页面大小设置为 10。调试后,我得到 OnItemdataBound 事件在加载时调用了前 10 条记录。换页后,它被调用了20次,但第一页和第二页的20条记录被调用,前10条记录被调用了两次......奇怪但真实。如果有人对此有任何想法,请帮助我。