2011-05-19 71 views
3

喜亲爱的朋友们:
我有一个radcombobox控件是与RadListViw(与RadDataPager内)的关系...
当我改变弧度组合框的项目,所以RadListView更新...
selectedIndexxhanged()服务器端事件...
我的SelectedIndexChanged()是这样的:RadDataPager的FindControl返回空值在某些情况下

protected void RadcbImagesGroup_SelectedIndexChanged(object sender, Telerik.Web.UI.RadComboBoxSelectedIndexChangedEventArgs e) 
{ 
    rlvImages.DataBind(); 
    var raddatapager = (rlvImages).FindControl("RadDataPager1") as RadDataPager; 
    if (raddatapager != null) 
    { 
     raddatapager.FireCommand("Page","First"); 
    } 

} 

我radcombobox控件项目值是这样的:1,2,3 ...

在模式1,我们有25页... 在模式2中,我们有5页...在模式3,我们有5页 ...

我的问题是,当我们在模式1,把PAGENUMBER到超过5,当我将组合框项目更改为模式2时
var raddatapager =(rlvImages).FindControl(“RadDataPager1”)as RadDataPager;为空...

,但如果我们把页面#(我们是在模式1)小于5或等于5,并更改radcb项目到另一个一切正常......

在哪里零问题?

在此先感谢

+0

这真的很奇怪 - 寻呼机应该始终存在。除非在listview中只有一个项目的数量被容纳在一个页面中,而pager没有被渲染。这种情况可能是空引用的罪魁祸首吗? – 2011-05-19 13:44:43

+0

谢谢@迪克兰帕德回答...是的,这真的很奇怪......我对此感到困惑!你可以在一个简单的项目中测试这个问题,并让我们知道这些回复? – MoonLight 2011-05-19 17:46:54

回答

0

我无法弄清楚什么是空的问题...
但下面的代码解决了我的问题通过其他方式:

rlvImages.CurrentPageIndex = 0; 

,而不是:

var raddatapager = (rlvImages).FindControl("RadDataPager1") as RadDataPager; 
if (raddatapager != null) 
{ 
    raddatapager.FireCommand("Page","First"); 
} 
相关问题