我遇到了一个问题,当我尝试减少分隔列表的大小然后运行回发时,我收到的错误如下:
Error: Sys.WebForms.PageRequestManagerServerErrorException: capacity was less than the current size.
Parameter name: value
我在一个Web控件中调用了一个JavaScript函数,该控件将分隔列表(我相当容易说正确形成)传递给另一个Web控件,并且该Web控件在主窗体上设置了一个隐藏字段。然后它会在按钮上调用回发,刷新我的Telerik网格。
隐藏字段设置正确; NeedDataSource正确获取该字符串,然后根据该分隔字符串获取相关对象。一旦刷新完成,它就会抛出上面的错误,我不知道为什么。如果我增加字符串的长度,我就不会遇到这个问题,这对我来说意味着某些元数据没有得到更新。我不知道为什么会发生这种情况。
以下代码是JavaScript的相关摘要 - 不确定它的用途。
//WebControl-1
function passItemListPLtoDL() {
var idList = null;
var requestItemPairList = GetSelectedPullListPair();
LoadMobileDeliveryList(idList, requestItemPairList);
return false;
}
//WebControl-2
function LoadMobileDeliveryList(items, requestItemPairs) {
if (items != null) {
setItemIdList(items); // set the hidden field in Default.aspx.
}
if (requestItemPairs != null) {
setRequestItemPairList(requestItemPairs); // set the hidden field in Default.aspx.
}
RefreshDeliveryList();
}
function RefreshDeliveryList() {
__doPostBack('<%=btnRefreshDelivery.UniqueID %>', '')
}
//MainForm
function setRequestItemPairList(list) {
var obj = document.getElementById("requestItemPairList");
obj.value = list;
}
我不认为还有其他任何事情。我也可以从代码隐藏中输入C#代码,但我不确定它的相关性。
我在Stack上看到了这个错误的其他一些案例,但我并不完全确定如何解释它们。他们似乎不是来自我正在做的事情,所以我想我会问。感谢您的投入!
干杯
答案 0 :(得分:0)
修正了此问题。
结果虚拟化和分页导致我离开的网格容量发生奇怪的事情。如果这对您而言,我建议您查看Telerik上的分页设置。错误可能发生在你没想到的地方。