概述
這個入門系列我會說一些怎樣在asp.net 框架中開發自定義控制項,我把這個主題分為兩部分來說,一是開發自定義控制項,另乙個是高階控制項開發。在第一部分中,我談論了控制項開發的一些基本主題,在下一部分,我主要是說一些高階主題,如模板、資料繫結。
本文為系列第一篇,從乙個簡單的控制項開始,我也「hello world!」一把,開始構建乙個顯示「hello world!」的控制項。
建立乙個簡單控制項
我們將從乙個簡單的控制項helloword開始,這個控制項在頁面中顯示「hello word!」。
**如下:
helloworld.cs
1using
system
2using
system.web
3using
system.web.ui45
namespace
mycontrols
613}14
}1516
上面是繼承於control類的helloworld控制項類的c#**。
繼承於control類,實際是system.web.ui.control類,這主要是你可以充分利用作為基類的control類的所有屬性、方法和事件。
在上面的**中,過載了control類的render方法,當asp.net頁面呈現內容時,會呼叫頁面中的所有控制項的render方法,所以當頁面自身呈現時,在render方法中所要輸出的內容將會生成,顯示在頁面html**中。
render 方法擁有乙個輸入引數,就是htmltextwriter類的例項,通過呼叫htmltextwriter類的write()方法,可以生成內容,在helloword類中,write()方法顯示「hello world!」文字。
在helloword類中,匯入了三個命名控制項,system,system.web,syetem.web.ui,通常,當構建乙個自定義控制項一直匯入這三個命名空間是乙個好的建議,這些命名空間包括開發控制項的基類,譬如control和webcontrol。
最後為helloworld這個類建立了乙個mycontrols的命名空間,你可以完全按照你的意願去建立,在asp.net頁面中例項化控制項時你只需要去引用這個命名空間就可以了(注意,在程式設計中良好的習慣非常重要,c#程式設計參考中建議命名控制項採用pascal命名方法,並由公司名+組織名+專案名方式編寫)。
default.aspx
1@ register tagprefix="
mycontrols
"namespace="
mycontrols
"assembly="
mycontrols
"%>
2<
html
>
3<
head
><
title
>
title
>
head
>
4<
body
>
5<
mycontrols:helloworld
runat
="server"
/>
6body
>
7html
>
好的,helloworld控制項就寫到這了,是不是感覺非常簡單,到現在是不是非常自信了?那就跳往後面的主題吧!
出處:
PHP擴充套件開發之建立乙個類
執行環境 php7.0以上版本和以下版本建立流程和使用的函式可能會有些差異 第一步,先生成乙個擴充套件骨架 cd php 7.1.10 cd ext ext skel extname clas tension vim clas tension config.m4去掉前面的dnl dnl php ar...
WCF教程系列 1 建立第乙個WCF程式
wcf教程系列 1 建立第乙個wcf程式 using system.servicemodel namespace host 而hellowcfservice.cs 實現如下 using system 縮短為baseaddress http localhost 8731 hellowcfservice...
釘釘開發系列篇之開發第乙個Django Web應用
第一部分 在windows上安裝django 在使用django開發應用之前,你需要安裝它。在這裡,採取簡單的最小化的安裝就可以完成基本的建站任務需求。django安裝嚮導 第一步,安裝python。django是乙個基於python的網路框架,因此安裝django需要首先安裝python。在本系列...