動的ユーザーコントロールを持つページがプレースホルダにあります。 ページをロードすると、デフォルトでUCがロードされます(「OrigUC」と呼ぶ)。このページには、UCを別の「NewUC」に置き換えたボタンがあります。したがって、このボタンはajaxを使用してポストバックし、UCを置き換えます。C#:ダイナミックユーザーコントロールIsPostbackは、UCが最初に読み込まれたにもかかわらず、trueイベントを返します。
私のPage_Loadでは、私はIsPostBack()をチェックしますが、何らかの理由でUCを初めてロードしたにもかかわらずそれでも私は本当のことを返します。なぜそれが真実に戻っているのか、私はIsPostBackがUCのPage_Loadの中でチェックしているので、UCが返ってきたかどうかを返すと思った。
私は今から、それが呼び出されたページから来るユーザーコントロールのIsPostbackをもっと理解しています... UCがページから初めて呼び出されたかどうかをどのように判断できますか?
例:
それはUCがページ内に呼び出された最初の時間であれば、私はDBをquerytheしても、外部ウェブとUCのコントロールをバインドする必要があります。私が部分的なポストバックを引き起こした場合、私はDBとWebSを再度照会したくありません。あなたのコントロールは何をした場合、要求は、POST HTTPリクエストでなかった場合
If (!IsUserControlPostBack)
{
// Step 1 Init of UC
// Call to DB
// Call to WebS
}
else
{
// A Post back occured ...
// It can be Page who triggered it or UC and I do not want to call Step 1 again
// DO something else.
}
C
定義し、「OK初めて"。あなたのアプリケーションで初めて?このユーザーの初めてですか?初めてこのフルページをリフレッシュする(例:ajax経由) Web環境で初めてのことは何ですか? – Stilgar