Maximillian
Maximillian

Reputation: 754

Page.Load issue in ASP.NET 2.0

I am trying to aid another programmer with a page called Default.aspx with a code-behind section, and unfortunately I am at a bit of a loss.

 Partial Class _Default
 Inherits OverheadClass
 'A bunch of global variables here'

 Private Sub page_load(ByVal sender As Object, ByVal e As System.Eventarts) Handles Me.Load
 'Function goes here'

And in the OverheadClass we have

 Public Sub Sub_OverheadClass_Load(ByVal sender As Object, ByVal e as System.EventArgs) Handles MyClass.Load

The desired effect is when the OverheadClass is inherited, we want its load to run before the load event on the page runs. There is probably a very simple answer to this that I am missing.

Edit: I forgot to note that we write in VB, and not C# as many of you are used to for ASP.

Upvotes: 3

Views: 4237

Answers (4)

mattruma
mattruma

Reputation: 16677

You should be able to override the OnLoad and call the base class's OnLoad first, then your class, for example:

C# Version

protected override void OnLoad(EventArgs e)
{
    base.OnLoad(e);

    // Do some stuff here
}

VB Version

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

    MyBase.OnLoad(e)

    ' Do some stuff here

End Sub

Upvotes: 11

Mark Cidade
Mark Cidade

Reputation: 99957

 Partial Class OverheadClass
    Inherits System.Web.UI.Page

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



Partial Class _Default
    Inherits OverheadClass

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

Upvotes: 0

Loscas
Loscas

Reputation: 561

Your default page should inherit OverheadClass

   Partial Public Class _Default
        Inherits OverheadClass

        Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
            'Do some page stuff'
        End Sub
    End Class

And OverheadClass should inherit System.Web.UI.Page

Public Class OverheadClass
    Inherits System.Web.UI.Page
    Public Sub Sub_OverheadClass_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyClass.Load
        'Do some base stuff'
    End Sub
End Class

Upvotes: 0

Brian Schmitt
Brian Schmitt

Reputation: 6068

In VB it would be:

Private Sub page_load(ByVal sender As Object, ByVal e As System.Eventarts) Handles Me.Load
  Mybase.Sub_OverheadClass_Load(e)
End Sub

Upvotes: 3

Related Questions