新聞中心
ASP.NET控件開發(fā)技巧之關(guān)閉基類不必要的功能主要是什么方法呢?下面就向你介紹兩種:

站在用戶的角度思考問題,與客戶深入溝通,找到?jīng)鲋菥W(wǎng)站設(shè)計(jì)與涼州網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:做網(wǎng)站、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、申請(qǐng)域名、網(wǎng)頁空間、企業(yè)郵箱。業(yè)務(wù)覆蓋涼州地區(qū)。
ASP.NET控件開發(fā)技巧之關(guān)閉基類不必要的功能方法1.關(guān)閉容器
Control類有Controls集合屬性,即繼承Control類的控件都是一個(gè)容器控件,asp.net控件內(nèi)置的有PlaceHolder控件,其只繼承自Control類,什么也沒做。但所有控件都是繼承自Control類的。如一個(gè)label控件,照樣可以當(dāng)容器使用.
- label1.Controls.add(control)
有些控件則不需要這個(gè)功能,如Literal控件,只輸出純文字,不允許添加子控件
很簡(jiǎn)單,重寫CreateControlCollection方法,返回EmptyControlCollection空集合
- protected override ControlCollection CreateControlCollection()
- {
- return new EmptyControlCollection(this);
- }
ASP.NET控件開發(fā)技巧之關(guān)閉基類不必要的功能方法2.禁用屬性
如SqlDataSourceControl控件,其繼承自DataSourceControl,DataSourceControl類則繼承自Control類,DataSourceControl 不需要呈現(xiàn)東西,自然不需要樣式,所以像SkinID,EnableTheming等屬性則不需要使用。同時(shí)也可以用new關(guān)鍵字和一些元數(shù)據(jù)禁用掉像WebControl類的一些公共屬性。有時(shí)候你確實(shí)不需要這些東西,或者是將這些屬性給子標(biāo)簽用也可以。
- /**////
- ///
- [Bindable(false), Browsable(false), EditorBrowsable(EditorBrowsableState.Never)]
- new public System.Drawing.Color BorderColor
- {
- get
- {
- return new System.Drawing.Color();
- }
- }
總結(jié):有時(shí)候繼承下來的并不是你所需要的,所以靈活的重寫基類的方法和屬性是非常有必要的,而且有時(shí)候還必須這么做.
ASP.NET控件開發(fā)技巧之關(guān)閉基類不必要的功能方法的相關(guān)內(nèi)容就向你介紹到這里,希望對(duì)你有所幫助。
網(wǎng)頁名稱:ASP.NET控件開發(fā)技巧之關(guān)閉基類不必要的功能
網(wǎng)址分享:http://www.dlmjj.cn/article/dpojish.html


咨詢
建站咨詢
