ページで devexpress コントロールを使用していますが、それは問題ではありません。
これが何が起こるかです。私は取得のみでページにプロパティを作成しました。このプロパティは、ViewState からクエリ文字列値を取得します。!IsPostBack で囲まれたページ読み込みイベントの ViewState に値を格納します。保存した後、マスターページに更新パネルを配置したことに注意してください。ネットを検索したところ、ViewState の値がコールバックに保存されないことがわかりました。それが理由かどうかはわかりません。これが私のコードです:
public partial class _Default : BasePage
{
private Int64 RequestId
{
get
{
return (Int64.Parse(ViewState["RequestId"].ToString()));
}
}
protected override void Page_Load(object sender, EventArgs e)
{
//Check for security
base.Page_Load(sender, e);
if (!IsPostBack)
{
GetQueryString();
gridBind();
}
}
private void GetQueryString()
{
string requestId = this.Request.QueryString["RID"];
if(!String.IsNullOrEmpty(requestId))
ViewState["RequestId"] = Int64.Parse(this.Server.UrlDecode(requestId))
else
ViewState["RequestId"] = 0;
}
}
質問を編集しました。最初の問題はIE7の愚かさが原因でしたが、それでも各ポストバック後のViewStateはnullです。EnableViewState を使用しようとしましたが、常に null です。私のソリューションで使用するどのページでも同じです。ViewStates はまったく使用できません。間違いなく何かが間違っています。