在复杂的动态加载用户控件过程中,控件的代码中往往捕捉不到自己的IsPostBack的假值,一般只有真值(true)。为了实现IsPostBack的功能,我们可以使用ViewState来模拟实现,代码如下:
private bool IsPagePostBack
{
get
{
if (ViewState["Counter"] != null)
{
ViewState["iCounter"] = Convert.ToInt32(ViewState["Counter"]) + 1;
}
else
{
ViewState["Counter"] = 0;
}
if (Convert.ToInt32(ViewState["Counter"]) > 0)
{
return true;
}
else
{
return false;
}
}
}