私は、イベントハンドラを呼び出していて、そのイベントハンドラから、私がプレゼンターにF5の自動ボタンをクリックしてページをリフレッシュする方法を教えてください。私ASCXコントロールで
ASCXページでpublic event EventHandler<EventArgs> Add;
protected void btnAdd_Click(object sender, EventArgs e)
{
if (Add != null)
Add(sender, e);
}
にあるメソッドを呼び出していたのボタンを持っていますプレゼンター
AddListView.Add += delegate(object sender, EventArgs e)//AddListView is a Interface
{
Add();
};
私はbtnAddにその作業罰金とレコードをクリックしています追加取得されますが、私は、ブラウザのページを更新していたときに、F5によると、マウスbtnAddは火を取得してもう一度クリックします。私は
に..私はその作業罰金その後
// Page refresh F5 btn press
protected override void LoadViewState(object savedState)
{
object[] AllStates = (object[])savedState;
base.LoadViewState(AllStates[0]);
_refreshState = bool.Parse(AllStates[1].ToString());
_isRefresh = _refreshState == bool.Parse(Session["__ISREFRESH"].ToString());
}
// Page refresh F5 btn press
protected override object SaveViewState()
{
Session["__ISREFRESH"] = _refreshState;
object[] AllStates = new object[2];
AllStates[0] = base.SaveViewState();
AllStates[1] = !(_refreshState);
return AllStates;
}
を使用しようとしましたが、私は再びbtnAddをクリックすることができませんリフレッシュした後、btnAddのクリックに対して、再び私はそのが正常に動作し、その後リフレッシュをしています他のコントロールでこのコントロールを呼び出すと、アイテムページをクリックしてデータリストをポストバックします。
btnAddをクリックせずに、自動ボタンをクリックしてF5をクリックするか、ページを更新する方法。
誰かが私を助けてください..
私は、レコードを挿入した後、同じページにリダイレクトしてそのすべてを避ける方がよいと思います。 – Aristos