触发页面任何的回送事件都会触发一个错误,异常信息如下:
--------------------------------
指定的转换无效。
异常详细信息: System.InvalidCastException: 指定的转换无效。
源错误:
执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。
堆栈跟踪:
[InvalidCastException: 指定的转换无效。]
System.Web.UI.StateBag.LoadViewState(Object state) +26
System.Web.UI.Control.LoadViewState(Object savedState) +31
System.Web.UI.WebControls.WebControl.LoadViewState(Object savedState) +36
System.Web.UI.WebControls.LinkButton.LoadViewState(Object savedState) +13
System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +125
System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +311
System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +311
System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +311
System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +311
System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +311
System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +311
System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +311
System.Web.UI.Page.LoadPageViewState() +182
System.Web.UI.Page.ProcessRequestMain() +421
----------------------------------
出错的地方并不是我写的代码,而是自动生成的代码:
Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
InitializeComponent() <-------------错在此!!!!
End Sub
根据我运行的情况,我发现这个错好像和Datagrid有关,我为这个Datagrid定制了页眉,并动态生成多个模板列。当这个Datagrid生成后且有较多记录时就会发生上述错误。
请问这个错为什么会发生?怎样解决?
不可能吧,重新写一个页面试试
有时不能太相信VS.net
代码贴出来看看
检查一下.aspx文件中的<%#...%>部分,是不是里面的某个变量在.vb文件中没有定义或没定义成public,我遇到过一次这样的问题。
你还不如把你要求说一下,大家帮你做一下,看不明白
请你重新做一个页面再试,你可能修改了web窗体设计器生成的代码了,这里的代码是不能修改的,改一点再还原也是不行的,所以请你重新做一个页面再试。
我也碰到过
后来我重新创建了一个新的page
然后把code copy过去
http://www.microsoft.com/china/msdn/library/techart/pdc_aspplus.asp#top
请参考DataGrid的用法
照着你给的Aspx文件做了一下,我加了4条记录,而且EditItem中的控件全都绑定了,还是没有出错,
你应该还加了些什么别的东西,留你的Email,我把这个我测试的发给你