asp.net – 无法加载viewstate.正在加载viewstate的控制树必须与用于保存viewstate的控制
|
我目前正在为几个webproject工作一个动态核心.它有一个使用树视图和菜单的核心.然后对于每个特定的项目,它将几个不同的wuc加载到主要内容中.一些商业项目使用与业务相关的wuc,而另一些则使用不同的wuc.所以wuc的范围非常大. 现在我的问题是,每当用户按下menuitem或treeitem时,它会将wuc加载到链接到该对象的maincontent. 但是我有一些观点错误,我现在已经四处寻找,并且所解释的解决方案都没有适用于我的项目. 我所有的wuc都必须启用viewstate. 周期是 – > 页面(控件A)使用变量进行回发以将控件更改为wucPanel(UpdatePanel)中的ControlB. 目前的代码是 protected void Load_Page(object sender,EventArgs e)
{
//Code to decide which wuc to load.
UserControl wucc = (UserControl)Page.LoadControl(sFilePath);
ParentControl.ContentTemplateContainer.Controls.Add(wucc);
}
我已经尝试了几个修复,比如向wuc添加不同的id,但这要么像处理程序一样摒弃控制的内部功能,要么生成相同的viewstate错误. 我找到的一个解决方案是加载ControlA然后只删除它然后加载ControlB.但这会禁用我的第三方控制器(Telerik)的脚本. 我也读过关于每种类型的不同PlaceHolders,但由于我希望有多达50种不同的控件,我觉得这不会对我有所帮助. 从Page_Load移动 – > Page_Init生成了相同的错误. 错误:
解决方法在你的Anders案例中,你仍然需要在init方法中将旧控件与你现在想要添加的新控件一起添加到页面中.保留对您刚刚在类级别变量中添加的旧控件的引用.所以像Control _oldControl = null;
protected void Init_Page(object sender,EventArgs e)
{
//Code to decide which wuc to load.
UserControl wucc = (UserControl)Page.LoadControl(sFilePath);
ParentControl.ContentTemplateContainer.Controls.Add(wucc);
_oldControl = wucc as Control;
//Now add the new control here.
}
//override the LoadViewState method and remove the control from the control's collection once you page's viewstate has been loaded
protected override void LoadViewState(object savedState)
{
base.LoadViewState(savedState);
ParentControl.ContentTemplateContainer.Controls.Remove(_oldControl);
}
希望这可以帮助.如果确实如此,请选中此答案旁边的复选框以接受它,如果您愿意,请将其投票:) (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 忽略在IIS中为代码400(错误请求)配置的自定义错
- asp.net-mvc – 在VS 2015中添加视图上下文菜单非常慢
- entity-framework-4 – 首先在实体框架代码中使用导航属性
- asp.net-mvc-3 – 如何指定默认LayoutPage在Razor在ASP.NET
- asp.net-mvc-2 – ASP.NET-MVC 2 DataAnnotations StringLe
- asp.net – 无法在UpdatePanel中下载文件
- asp.net-mvc – MS Ajax与jQuery在ASP.NET MVC应用程序中的
- asp.net – 表单身份验证是否与Web负载平衡器一起使用?
- asp.net – 如何在EF DbContext和AspNet Membership之间共享
- asp.net – 调用en外部javascript文件的函数
- asp.net-mvc-3 – 带区域的MVC – Html.ActionLi
- asp.net-mvc-3 – 使用.SetValidator()时,Fluent
- asp.net-mvc-3 – asp.net mvc 3中的自定义错误页
- msbuild – 如果不指定目标框架,则不支持“发布”
- asp.net – 在代码GZipping中的IIS压缩?
- ASP.NET MVC 3中建立的[Email]属性是不是?
- ASP.Net 4.0中可用的新功能是什么?
- asp.net-mvc-3 – 当使用Html.TextBoxFor时,将模
- asp.net – 如何拒绝用户访问子文件夹和文件?
- asp.net-mvc – asp.net mvc博客引擎
