1

すべてのコンテンツ ページの読み込み時に、コンテンツ ページ名を取得したい。コンテンツ ページの読み込みごとにどのマスター ページ イベントが発生するかを知りたいのですが。

4

2 に答える 2

2

ASP.NET ページで発生するイベントについて説明しているリソースを次に示します。

http://weblogs.asp.net/ricardoperes/archive/2009/03/08/asp-net-page-events-lifecycle.aspx

  1. Page.OnPreInit
  2. MasterPageControl.OnInit (マスター ページの各コントロール用)
  3. Control.OnInit (ページ上の各コントロールに対して)
  4. MasterPage.OnInit
  5. Page.OnInit
  6. Page.OnInitComplete
  7. Page.LoadPageStateFromPersistenceMedium
  8. Page.LoadViewState
  9. MasterPage.LoadViewState
  10. Page.OnPreLoad
  11. Page.OnLoad
  12. MasterPage.OnLoad
  13. MasterPageControl.OnLoad (マスター ページの各コントロール用)
  14. Control.OnLoad (ページ上の各コントロール用)
  15. OnXXX (制御イベント)
  16. MasterPage.OnBubbleEvent
  17. Page.OnBubbleEvent
  18. Page.OnLoadComplete
  19. Page.OnPreRender
  20. MasterPage.OnPreRender
  21. MasterPageControl.OnPreRender (マスター ページの各コントロール用)
  22. Control.OnPreRender (ページ上の各コントロール用)
  23. Page.OnPreRenderComplete
  24. MasterPageControl.SaveControlState (マスター ページの各コントロール用)
  25. Control.SaveControlState (ページ上の各コントロール用)
  26. Page.SaveViewState
  27. MasterPage.SaveViewState
  28. Page.SavePageStateToPersistenceMedium
  29. Page.OnSaveStateComplete
  30. MasterPageControl.OnUnload (マスター ページの各コントロール用)
  31. Control.OnUnload (ページ上の各コントロール用)
  32. MasterPage.OnUnload
  33. Page.OnUnload

また、すべてのイベントについて詳しく説明しているASP.NET ページのライフサイクルに関する公式ドキュメントもここにあります。うまくいけば、これはあなたを助けるでしょう.

編集;

うーん、実際には、上記は少し上に見えます。各コンテンツ ページで、必ず ASPX ファイルのマスター ページを参照してください。

<%@ MasterType virtualpath="~/Masters/Master1.master" %>

次に、マスターページに次のようなパブリックメソッドがあります。

public void LogContentPageName(string name)
{
    // Do whatever you want with the passed name.
}

次に、コンテンツ ページの Page_Load イベントで次のことができます。

protected void Page_Load(object sender, Eventargs e)
{
    Master.LogContentPageName("Whatever");
}
于 2013-02-15T12:45:44.623 に答える
0

以下のイベントでお試しください

protected override void OnInit(EventArgs e) { //ここで処理を行います }

于 2013-02-15T12:44:41.087 に答える