【发布时间】:2017-01-05 10:28:23
【问题描述】:
大量数据从 DB 加载到 Webdatagrid 中。我正在使用 webdatagrid 的 virtualscrolling 属性 在滚动时动态加载数据。由于有很多条记录,如果点击并拖动滚动条,就会出现加载符号,导致“反序列化失败”错误。
【问题讨论】:
标签: c# asp.net infragistics webdatagrid
大量数据从 DB 加载到 Webdatagrid 中。我正在使用 webdatagrid 的 virtualscrolling 属性 在滚动时动态加载数据。由于有很多条记录,如果点击并拖动滚动条,就会出现加载符号,导致“反序列化失败”错误。
【问题讨论】:
标签: c# asp.net infragistics webdatagrid
一种可能的解决方案是增加控制回调管理器的默认超时时间(20 秒)。您可以使用每个合气道控件引用的受保护 _callbackManager 对象。要增加 WebDataGrid 超时时间,您可以执行以下操作:
代码 sn-p:
<script type="text/javascript">
function Init(sender, eventArgs) {
sender._callbackManager.setTimeout(60000);
}
</script>
...
<ig:WebDataGrid ID="WebDataGrid1" runat="server" DataSourceID="EmployeesDataSource"
Width="100%" DataKeyFields="OrderID">
<ClientEvents Initialize="Init" />
客户端事件 AJAXResponse 也可以使用,插入 Initialize,这取决于用例。
此失败的另一个原因可能是在回发(如果有)之后呈现 WebDataGrid。例如,如果您嵌套了 WebDataGrid,并进行了回发,请确保它可见并且父控件也可见,否则将不会调用渲染方法。
最后,请确保您遵循 Infragistics documentation for Virtual Scrolling 的建议,例如配置 Row Cache Factor、Threshold Factor 和 Data Fetch Delay。
【讨论】: