小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

使用原型模型創(chuàng)建客戶端組件類

 WindySky 2009-01-12
使用原型模型創(chuàng)建客戶端組件類

更新:2007 年 11 月

本主題演示如何在 ASP.NET 中創(chuàng)建 AJAX 客戶端組件類。AJAX 客戶端類(包括基組件、行為和控件類)是使用原型模型和 JSON 表示法在 ECMAScript (JavaScript) 中定義的。在 JSON 表示法中,所有的原型成員都用逗號(hào)隔開(kāi)。原型中的最后一個(gè)成員后面沒(méi)有逗號(hào)。

下面的示例定義一個(gè)不具有實(shí)際功能的簡(jiǎn)單客戶端組件類。它演示如何使用原型模型來(lái)定義一個(gè)從 Component 基類派生的類。

// Declare a namespace.
Type.registerNamespace("Samples");
// Define a simplified component.
Samples.SimpleComponent = function()
{
Samples.SimpleComponent.initializeBase(this);
// Initialize arrays and objects in the constructor
// so they are unique to each instance.
// As a general guideline, define all fields here.
this._arrayField = [];
this._objectField = {};
this._aProp = 0;
}
// Create protytype.
Samples.SimpleComponent.prototype =
{
// Define set and get accessors for a property.
Set_Aprop: function(aNumber)
{
this._aProp = aNumber;
},
Get_Aprop: function()
{
return this._aProp;
},
// Define a method.
DoSomething: function()
{
alert('A component method was called.');
}
} // End of prototype definition.
// Register the class as derived from Sys.Component.
Samples.SimpleComponent.registerClass('Samples.SimpleComponent', Sys.Component);

下面的步驟介紹如何定義一個(gè) ASP.NET AJAX 客戶端類(包括控件類)。:

  1. 如果該類是某個(gè)命名空間的一部分,則通過(guò)調(diào)用 Type.registerNamespace 方法來(lái)注冊(cè)該命名空間。

  2. 在構(gòu)造函數(shù)名中定義類的構(gòu)造函數(shù)及其命名空間。在構(gòu)造函數(shù)中,聲明所有私有字段。推薦使用 this 指針將構(gòu)造函數(shù)中的私有變量聲明為實(shí)例字段。按照約定,私有字段的名稱帶有下劃線前綴。

    Samples.SimpleComponent = function()
        {
        Samples.SimpleComponent.initializeBase(this);
        this._arrayField = [];
        this._objectField = {};
        this._aProp = 0;
        }
  3. 定義類原型。在原型中,定義所有公共和私有方法,其中包括屬性訪問(wèn)器方法和事件。

    建議在構(gòu)造函數(shù)中定義所有字段。在原型中定義字段相對(duì)于在構(gòu)造函數(shù)中定義字段能夠獲得非常小的性能提升。但是,并不是所有的字段類型都可以在原型中聲明。例如,ArrayObject 字段類型必須在構(gòu)造函數(shù)中聲明,這樣它們對(duì)于每個(gè)實(shí)例都是唯一的,而不是在原型中從所有的實(shí)例中引用。這樣可避免在針對(duì)一個(gè)實(shí)例更新組件屬性時(shí)產(chǎn)生意外結(jié)果,以致更新所有實(shí)例的值。

    說(shuō)明:

    始終通過(guò) this 指針引用原型中的成員。使用 this 指針可以提高性能,因?yàn)楣ぷ骷加酶俚膬?nèi)存。

  4. 通過(guò)調(diào)用 Type.registerClass 方法來(lái)注冊(cè)類。有關(guān)如何使用 Type.registerClass 方法來(lái)注冊(cè)一個(gè)類并聲明該類的接口和基類的更多信息,請(qǐng)參見(jiàn) Type.registerClass 方法。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多