「共通処理用Page派生クラス(commonクラス)」の編集履歴(バックアップ)一覧はこちら
共通処理用Page派生クラス(commonクラス) - (2008/01/23 (水) 10:54:36) の最新版との変更点
追加された行は緑色になります。
削除された行は赤色になります。
*共通処理用Page派生クラス(commonクラス)
***概要
+system.web.ui.page クラスを継承するcommonクラスを作成する。
+アプリケーション共通の処理をcommonクラスに定義する。
+アプリケーションの各ファイルが、commonクラスを継承することによって、共通処理を実現する。
default.aspxの場合
#highlight(xml){{
system.web.ui.page クラス
↓継承
common クラス ←こいつに共通処理を書く
↓継承
_default クラス
}}
元ネタ:
-[[@IT総合トップ / テクノロジー / Insider.NET / .NET TIPS / [ASP.NET]アプリケーション共通の処理をPage派生クラスで実装するには?>>http://www.atmarkit.co.jp/fdotnet/dotnettips/295pagevalidate2/pagevalidate2.html]]
***前提条件
-[[新しいwebページの作成]]
-[[webフォームの追加]]
***手順
[ソリューションエクスプローラ] -> webサイトを右クリック -> 「新しい項目の追加」
&img(119.jpg)
「クラス」を選択 -> 「追加」
&img(120.jpg)
「はい」を押す。
&img(121.jpg)
「app_code」フォルダと、「class1.vb」ファイルが追加されている。
&img(122.jpg)
App_Code/Class1.vbを以下のように変更。
#highlight(vb.net){{
Imports System
Imports System.Collections
Imports System.Web.UI
Imports System.Web.UI.WebControls
Public Class common
Inherits Page
Private Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Response.Write("あえて言わせてもらおう!")
End Sub
End Class
}}
default.aspx.vbを以下のように変更。
#highlight(vb.net){
Partial Class _default
Inherits common
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Response.Write("テストであると!")
End Sub
End Class
}
実行すると以下のようになる。
commonクラスのpage_loadイベントが先に処理され、
その後、default.aspx.vbのpage_loadイベントが処理されているのがわかる。
&img(123.jpg)
次に、違うwebフォームにcommonクラスを継承させる。
default2.aspx.vbを以下のように変更。
#highlight(vb.net){
Partial Class Default2
Inherits common
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Response.Write("別ページであると!")
End Sub
End Class
}
実行すると以下のようになる。
commonクラスのpage_loadイベントは処理されているが、
default.aspxとは別のwebフォームであるのがわかる。
&img(127.jpg)
*共通処理用Page派生クラス(commonクラス)
**概要
+system.web.ui.page クラスを継承するcommonクラスを作成する。
+アプリケーション共通の処理をcommonクラスに定義する。
+アプリケーションの各ファイルが、commonクラスを継承することによって、共通処理を実現する。
default.aspxの場合
#highlight(xml){{
system.web.ui.page クラス
↓継承
common クラス ←こいつに共通処理を書く
↓継承
_default クラス
}}
元ネタ:
-[[@IT総合トップ / テクノロジー / Insider.NET / .NET TIPS / [ASP.NET]アプリケーション共通の処理をPage派生クラスで実装するには?>>http://www.atmarkit.co.jp/fdotnet/dotnettips/295pagevalidate2/pagevalidate2.html]]
**前提条件
-[[新しいwebサイトの作成]]
-[[webフォームの追加]]
**手順
[ソリューションエクスプローラ] -> webサイトを右クリック -> 「新しい項目の追加」
&img(119.jpg)
「クラス」を選択 -> 「追加」
&img(120.jpg)
「はい」を押す。
&img(121.jpg)
「app_code」フォルダと、「class1.vb」ファイルが追加されている。
&img(122.jpg)
App_Code/Class1.vbを以下のように変更。
#highlight(vb.net){{
Imports System
Imports System.Collections
Imports System.Web.UI
Imports System.Web.UI.WebControls
Public Class common
Inherits Page
Private Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Response.Write("あえて言わせてもらおう!")
End Sub
End Class
}}
default.aspx.vbを以下のように変更。
#highlight(vb.net){
Partial Class _default
Inherits common
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Response.Write("テストであると!")
End Sub
End Class
}
実行すると以下のようになる。
commonクラスのpage_loadイベントが先に処理され、
その後、default.aspx.vbのpage_loadイベントが処理されているのがわかる。
&img(123.jpg)
次に、違うwebフォームにcommonクラスを継承させる。
default2.aspx.vbを以下のように変更。
#highlight(vb.net){
Partial Class Default2
Inherits common
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Response.Write("別ページであると!")
End Sub
End Class
}
実行すると以下のようになる。
commonクラスのpage_loadイベントは処理されているが、
default.aspxとは別のwebフォームであるのがわかる。
&img(127.jpg)
表示オプション
横に並べて表示:
変化行の前後のみ表示: