0

ブラウザの種類に基づいてテーマを割り当てようとしています。これを基本クラスで実行したいので、1か所に配置するだけで済みます(マスターページを使用しています)。次のようにコーディングしましたが、ここでの「OnLoad」は「Page_PreInit」の前に実行されます。これはPage_PreInitに入れる必要がありますが、なぜ起動しないのですか?

Imports Microsoft.VisualBasic

Public Class MyBaseClass
Inherits System.Web.UI.Page

Private Sub Page_PreInit(ByVal sender As Object, ByVal e As System.EventArgs)
    'Assign the CSS Theme based on the Browser Type
    If (Request.Browser.Type = "IE8") Then
        Page.Theme = "Standard-IE8"
    Else
        Page.Theme = "Standard"
    End If
End Sub

Protected Overrides Sub OnLoad(ByVal e As System.EventArgs)

    MyBase.OnLoad(e)
End Sub

End Class

次に、基本クラスを継承するようにログインページをコーディングします。

Partial Class Login
'Inherits System.Web.UI.Page
Inherits MyBaseClass

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

ありがとう、ジェームズ

4

1 に答える 1

1

基本クラスでオーバーライド する必要があります。OnPreInit

Protected Overrides Sub OnPreInit(ByVal e As System.EventArgs)
        'Assign the CSS Theme based on the Browser Type
        If (Request.Browser.Type = "IE8") Then
            Page.Theme = "Standard-IE8"
        Else
            Page.Theme = "Standard"
        End If
        MyBase.OnPreInit(e)
    End Sub

カスタム基本クラスの使用の詳細については、こちらを参照してください。

于 2009-09-30T02:22:40.950 に答える