[解決済み] Page_Loadの呼び出しとその方法について教えてください。
2022-03-04 06:36:52
質問
Page_Loadは仮想メソッドではありません。何がこのメソッドを呼び出し、どのようにそれを行うのでしょうか?リフレクションなのか、それとも他の手法なのでしょうか?また、この方法でどれだけのイベントが処理されるのでしょうか?
また、オーバーロードされたOnLoadやPage_Loadで処理することが望ましいのでしょうか?これらはどのように違うのでしょうか?
どのように解決するのですか?
ASP.NET には "AutoEventWireup" と呼ばれる機能があります。
EventHandler
のような名前で署名します。
Page_Load
で、ランタイムは親ページからあなたのクラスのメソッドにイベントを配線してくれます。 基本的に、ランタイムはあなたに代わってこれを行います。
this.Load += this.Page_Load;
ここで、AutoEventWireupを無効にして、これらのイベントハンドラをページ内に自分で作成するのがよいでしょう。
OnInit
メソッドをオーバーライドするか、あるいは単に親ページの
OnLoad
メソッドを使用します。
編集(以下OPのコメントに対して) このプロセスはボタンのクリックなどは対象外ですが、流れは似ています。
のようなメソッドが必要です。
MyButton_Click
を明示的にイベントハンドラを作成しなくても動作するようにするためには
OnClick
属性は、aspxファイル内のコントロールに次のように設定します。
<asp:button
id="MyButton"
onClick="MyButton_Click"
runat="server" />
これは、ASP.NETにボタンのクリックデリゲートを作成させ、それをボタンの
Click
イベントが発生します。
関連
-
[解決済み】統合マネージドパイプラインモードで適用されないASP.NETの設定が検出された
-
[解決済み] リクエストの最大長を超えました。
-
[解決済み] コードビハインドでASP.NetページのURLを取得する [重複]。
-
クライアントから危険な可能性のある Request.Path 値が検出されました。
-
[解決済み] Microsoft JSONの日付はどのようにフォーマットするのですか?
-
[解決済み] フォルダが存在しない場合、作成する
-
[解決済み] C#では、public、private、protected、アクセス修飾子がないことの違いは何ですか?
-
[解決済み] IISのAppPoolIdentityとファイルシステムの書き込みアクセス権
-
[解決済み】Visual Studioでシングルスレッドをデバッグする方法は?
-
[解決済み】すべてのASP.Netのウェブサイトが遅い理由を発見しました。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】レスポンスのコンテンツタイプをCSVにする
-
[解決済み] [Solved] レイアウトページ "~/Views/Shared/_Layout.cshtml" で、以下のセクションが定義されているが、レンダリングされていない。"スクリプト"
-
[解決済み] ファイルまたはアセンブリ 'Microsoft.CodeDom.Providers.DotNetCompilerPlatform' を読み込めませんでした。
-
[解決済み] レイアウトページ"~/Views/Shared/_Layout.cshtml "では、以下のセクションは定義されていますが、レンダリングは行われていません。"スクリプト"
-
[解決済み] allowDefinition='MachineToApplication' として登録されたセクションをアプリケーションレベルを超えて使用するとエラーになる。
-
[解決済み] IIS7.0で「HTTPエラー500.19 - 内部サーバーエラー」を解決するには [終了しました]。
-
[解決済み] System.Web.HttpException: リクエストタイムアウト
-
[解決済み] ASP.Net MVC - リソースが見つかりませんエラー
-
[解決済み] ORA-04067: 実行されませんでした、パッケージ本体が存在しません。
-
ASP.NETでRadioButtonコントロールを使用する