我看到书上有这样一个例子
protected override void LoadViewState(object savedState)
{
if (savedState == null)
{
base.LoadViewState(null);
return;
}
if (savedState != null)
{
object[] myState = (object[])savedState;
if (myState.Length != 4)
{
throw new ArgumentException("Invalid view state");
}
base.LoadViewState(myState[0]);
if (myState[1] != null)
((IStateManager)ButtonStyle).LoadViewState(myState[1]);
if (myState[2] != null)
((IStateManager)LabelStyle).LoadViewState(myState[2]);
if (myState[3] != null)
((IStateManager)TextBoxStyle).LoadViewState(myState[3]);
}
}
我不明白myState[0],myState[1],myState[2],myState[3]对应什么值???
protected override void LoadViewState(object savedState)
{
if (savedState == null)
{
base.LoadViewState(null);
return;
}
if (savedState != null)
{
object[] myState = (object[])savedState;
if (myState.Length != 4)
{
throw new ArgumentException("Invalid view state");
}
base.LoadViewState(myState[0]);
if (myState[1] != null)
((IStateManager)ButtonStyle).LoadViewState(myState[1]);
if (myState[2] != null)
((IStateManager)LabelStyle).LoadViewState(myState[2]);
if (myState[3] != null)
((IStateManager)TextBoxStyle).LoadViewState(myState[3]);
}
}
我不明白myState[0],myState[1],myState[2],myState[3]对应什么值???
解决方案 »
- 请教一个sql语句排序问题~
- asp用代码怎么删除上传到文件夹里的附件
- vs08sp1问题
- MIS系统中面象对象开发的意义有多大?
- 有兴趣的专家来探讨一下,关于gridview 的经典问题
- 我的VS2008没有负责测试
- 来个难的: 怎样将当前页面中的字符串传到另一页面中的Textbox中?
- 请问:用DataAdapter.fill()填充DataSet对象时,如果DataAdapter相关的SQL语句返回空值怎么办?急.....
- 高手们求救~~UltraWebTree树型控件复选框的2个问题``
- 大哥们帮忙啊 急几3几
- 分析器错误信息: 在应用程序级别以外使用注册为 allowDefinition='MachineToApplication' 的节是错误的。导致该错误的原因可能是在 IIS
- 在asp.net中cr 10的报表察看器上比准工具栏上的按钮为什么不能用?
LoadViewState(object savedState) savedState 的值是 SaveViewState 方法返回的值。
{
object[] myState = new object[4];
myState[0] = base.SaveViewState();
myState[1] = (_buttonStyle != null) ? ((IStateManager)_buttonStyle).SaveViewState() : null;
myState[2] = (_labelStyle != null) ? ((IStateManager)_labelStyle).SaveViewState() : null;
myState[3] = (_textBoxStyle != null) ? ((IStateManager)_textBoxStyle).SaveViewState() : null;
for (int i = 0; i < 4; i++)
{
if (myState[i] != null)
{
return myState;
}
}
return null;
}这是它的SaveViewState() 方法,
myState[0] = base.SaveViewState(); 在这里调用基类的SaveViewState()是规则还是有其他含义!
for (int i = 0; i < 4; i++)
{
if (myState[i] != null)
{
return myState;
}
}
如果myState[0]!=null就返回myState数组,这是为什么?