2013-02-02 55 views
2

這可能是一個愚蠢的問題,但我有一個困惑。
.aspx頁面繼承System.Web.UI.PagePage類有一些屬性,如,IsPostBackIsValidIsCrossPagePostBack還有更多...訪問這些屬性我們寫Page.IsPostBackIsPostBack
現在,問題是,這些屬性是static,如果不是那麼如何在.apsx文件中訪問這些文件,我試圖用class進行測試,但沒有成功。頁面類的屬性(實例)如何在沒有對象的情況下訪問

public class clsDemo:System.Web.UI.Page 
    { 
    } 

回答

1

Page class來自TemplateControl class;

public class Page : TemplateControl, IHttpHandler 

TemplateControl類從抽象Control類派生;

public abstract class TemplateControl : Control, ... 

ControlPage類派生從有命名爲頁的虛擬財產;

// Summary: 
    //  Gets a reference to the System.Web.UI.Page instance that contains the server 
    //  control. 
    // 
    public virtual Page Page { get; set; } 

Page類有像IsPostBackIsValid等性能;

// Summary: 
    //  Gets a value that indicates whether the page is being rendered for the first 
    //  time or is being loaded in response to a postback. 
    //   
    public bool IsPostBack { get; } 

因此,

由於aspx頁面派生從Page類,它也繼承TemplateControlControl類。在Control類中有一個名爲Page的公共屬性,因此您可以在班級中訪問Page屬性。而Page類擁有像IsPostbackIsValid等公共屬性,因此您可以使用Page屬性中的這些屬性。

public class Test : Page 
{ 
    public Test() 
    { 
     bool test = this.IsCallback; 
    } 
} 
+0

能否請您詳細介紹一下,它越來越怎麼叫,或者有一類 – Arshad

+0

@Arshad我已經更新來訪問這些屬性。 – daryal

+0

@ daryal,如何在課堂上訪問這些屬性。 – Arshad

相關問題