1.asp.net內(nèi)置的模板控件,了解模板控件  如下圖,以下為asp.net內(nèi)置的模板控件

  上圖的控件一方面是模板控件,另一方面又是數(shù)據(jù)綁定 " /> 7777精品伊久久久大香线蕉语言,99久久精品免费看国产免费软件,久久99精品国产

色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

asp.net控件開發(fā)基礎(chǔ)(16)

  這次我們繼續(xù)討論.主題是模板控件,模板控件將是復(fù)雜控件的起步

  1.ASP.NET內(nèi)置的模板控件,了解模板控件

  如下圖,以下為ASP.NET內(nèi)置的模板控件

  上圖的控件一方面是模板控件,另一方面又是數(shù)據(jù)綁定控件.這里我們暫且不討論如何實現(xiàn)數(shù)據(jù)綁定。使用上面控件的話,應(yīng)該熟悉控件存在著不同的模板,如下圖Repeater控件的模板類型。

  在不同模板內(nèi)你可以定義控件顯示內(nèi)容會呈現(xiàn)不同效果.典型的運用就是GridView,其呈現(xiàn)代碼會是一個表格代碼,而Repeater則是自定義的.其實其是內(nèi)部已經(jīng)實現(xiàn)了的,暫且先不管這些.下面一步步看下來如何實現(xiàn).

  2.實現(xiàn)模板控件

  2.1簡單實現(xiàn)模板控件(靜態(tài)模板)

  (1)模板控件為特殊的復(fù)合控件,你還是需要實現(xiàn)INamingContainer接口,因為在模板屬性的內(nèi)容是為子控件集合添加到模板控件中,為保證控件具有唯一標(biāo)識符.其實現(xiàn)將在CreateChildControls方法中創(chuàng)建子控件。ASP.NET2.0中可以直接繼續(xù)CompositeControl就可。

  (2)定義控件屬性

  模板屬性為System.Web.UI.ITemplate 接口,此接口有一InstantiateIn 方法 將在下面分析。上一篇我們說明了控件內(nèi)部屬性和控件的區(qū)別,模板并非控件而是屬性,我們在屬性瀏覽器中并未看到此屬性,是因為我們?yōu)槠浼恿嗽獢?shù)據(jù),作為內(nèi)部屬性使用。定義模板屬性方法如下

        //聲明變量
        private ITemplate _itemTemplate;


        
//屬性
        [Browsable(false)]
        [TemplateContainer(
typeof(Article))]
        [PersistenceMode(PersistenceMode.InnerProperty)]
        
public ITemplate ItemTemplate
        
{
            
get return _itemTemplate; }
            
set { _itemTemplate = value; }
        }

NET技術(shù)asp.net控件開發(fā)基礎(chǔ)(16),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 南平市| 定州市| 自贡市| 隆昌县| 潼南县| 西青区| 淳化县| 溧水县| 绵竹市| 巴彦县| 连江县| 盐池县| 宕昌县| 吉安市| 天镇县| 桦甸市| 当涂县| 通辽市| 扎赉特旗| 唐河县| 阳东县| 望奎县| 辽宁省| 乌拉特后旗| 博爱县| 拜泉县| 会宁县| 青岛市| 南开区| 福建省| 东源县| 民乐县| 民勤县| 溧阳市| 青浦区| 辽宁省| 汉寿县| 项城市| 丰城市| 敖汉旗| 德昌县|