成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

ASP.NET控件開發的基本概念

開發 后端
本文介紹ASP.NET控件開發的基本概念,包括介紹復合控件概念,復合控件的呈現和完成基本復合控件基本呈現等。

我們繼續討論ASP.NET控件開發的一些東西.

這次我們要討論的是復合控件.本文無法一步到位完整介紹,因為討論的篇幅比較大,所以分兩次寫,這次就先講些基本概念吧,剩著的下次寫.好象復合控件網上已經有很多教程了,相信大家也看過很多.如果看過的朋友就當我再廢話一便,沒看過的朋友希望能給你帶來幫助.

1.復合控件概念

復合控件跟用戶控件有很多相似點,***不同就是用戶控件后綴為ascx,而復合控件編譯后則為dll文件,還可以分發給大家使用,另外其他不同點還請參考MSDN吧,說白了,復合控件靈活性更大.

2.復合控件的呈現

(1)一般控件的呈現

從***篇到第六篇為止,我們用以呈現控件的方法介紹過的有Render方法和RenderContents方法.回顧一下吧,看以下其中的一小段代碼.

  1. publicoverridevoidRender(HtmlTextWriterwriter)  
  2. {  
  3. ..  
  4. writer.RenderBeginTag(HtmlTextWriterTag.Td);  
  5. writer.AddAttribute(HtmlTextWriterAttribute.Name,"CreditCardNo");  
  6. writer.AddAttribute(HtmlTextWriterAttribute.Id,"CreditCardNo");  
  7. writer.AddAttribute(HtmlTextWriterAttribute.Type,"text");  
  8. writer.RenderBeginTag(HtmlTextWriterTag.Input);  
  9. writer.RenderEndTag();  
  10. writer.RenderEndTag(); 

以前我們所做的控件都是上面這樣的寫法.我們可以認為在Render方法實現了以下兩個功能.

◆標簽布局(如td標簽,讓控件呈現的好看點-_-)
◆呈現的標簽(如input標簽)

(2)復合控件的呈現方法

我們知道ASP.NET控件開發里面已經提供給了我們像TextBox這樣的控件了,就如組裝電腦一下,你可以組裝.net提供你現有的控件,然后重新拼湊成一個新的控件,這樣便成了復合控件.但其呈現方法卻又不同.

復合控件是以包含子控件的形式呈現的,具體的呈現交給子控件自己去做,因為子控件自身都已經實現了其呈現方法(每個控件都繼承自Control類).假設你還不明白就看下面的圖吧.

LabelTextBox1為復合控件,LabelTextBox2則不是.兩者的呈現方式是不同的.具體實現方法請看下文

具體實現方法

3.完成基本復合控件基本呈現

(1)首先你要熟悉以下的屬性和方法
◆Control.CreateChildControls 方法用于創建子控件
◆Control.EnsureChildControls 方法用于確認是否已創建子控件,如果未創建完成的話則調用CreateChildControls 方法創建子控件
◆Control.ChildControlsCreated 屬性 獲取一個值,是否已創建子控件

(2)了解并實現INamingContainer接口

用戶控件UserControl類則繼承了INamingContainer接口,確包保子控件具有唯一的ID名稱,那復合控件也需要實現這個接口達到一樣的目的,這個是值得注意的地方.

復合控件以類撰寫的方法來添加控件即CreateChildControls 方法,而非在Render方法中以下面方式實現

  1. writer.RenderBeginTag(HtmlTextWriterTag.Input); 

4.控件狀態以及性能方面的選擇

上面的例子你會發現,再點擊按鈕以后,textbox值狀態被保存了下來,還記得以前以Render方法直接呈現input標簽的控件嗎?在點擊按鈕以后textbox值狀態是無法保存的.

我們討論了數據回傳的一些知識,我們也定義了一個textbox控件,在點擊按鈕以后,可以***的保存其值狀態.至于原因,還請大家參考下文,作者已經分析的很清楚了.

ASP.NET控件開發速成教程:生成復合控件

雖然創作復合控件相對比較容易,但是由于在撰寫時必須創建子控件,所以會出現性能系統開銷。如果您想優化控件的性能,可以通過重寫 Render 方法,自己實現呈現邏輯。另外,必須實現控件所需的任何回發數據處理和回發事件處理。

本來想一起把事件處理和樣式也寫完了,但想寫好篇幅太多了,這次就先寫到這里吧,因為想把自己心里的意思表達明白還真的需要費一定時間去想的.下次我們繼續討論復合控件的事件和樣式

【編輯推薦】

  1. 微軟發布ASP.NET MVC 2預覽版 多項功能更新
  2. ASP.NET服務器自定義控件安全準則
  3. ASP.NET編程規范之編碼規范淺析
  4. 關于ASP.NET Session的一點認識
  5. ASP.NET編程工具ASP.NET Web Matrix詳細介紹
責任編輯:佚名 來源: 博客園
相關推薦

2009-07-22 14:28:43

學習ASP.NET MASP.NET MVC

2009-08-04 10:43:59

ASP.NET控件開發

2010-01-15 13:30:50

VB.NET Prog

2010-01-13 16:26:57

VB.NET通知控件

2009-08-07 15:24:16

ASP.NET模板控件

2009-07-27 13:52:36

Panel控件ASP.NET

2009-08-07 14:42:02

ASP.NET控件開發

2009-08-07 15:34:15

ASP.NET數據綁定

2009-08-06 10:49:45

ASP.NET服務器控

2009-08-06 18:18:27

ASP.NET控件開發ASP.NET復合控件

2009-07-24 15:35:00

ASP.NET Gri

2009-09-11 09:09:00

ASP.NETAdRotator控件

2009-07-20 13:32:24

ScriptManagASP.NET

2009-08-04 11:29:14

HTML代碼ASP.NET控件

2009-08-04 12:29:57

ViewState概念ASP.NET

2009-09-09 09:09:17

ASP.NET MVC

2009-08-17 09:24:25

ASP.NET控件

2009-07-27 17:25:53

ASP.NET驗證控件

2009-08-03 15:08:00

SqlDataSour

2009-07-27 16:19:59

ASP.NET報表控件
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品成人一区二区三区 | 91精品国产乱码麻豆白嫩 | 91精品国产综合久久久久久丝袜 | 成人免费视屏 | 6996成人影院网在线播放 | 97精品国产一区二区三区 | 久久精品免费 | 九九热精品视频 | 日本一区二区不卡 | 成人欧美一区二区三区黑人孕妇 | 黑人巨大精品欧美一区二区免费 | 亚洲精品字幕 | 色噜噜亚洲男人的天堂 | 亚洲成人一区二区三区 | 91精品国产91久久久久久丝袜 | 天天干天天草 | 狠狠色综合网站久久久久久久 | 亚洲综合无码一区二区 | 国产精品成人av | 亚洲国产二区 | 久久成人高清视频 | 日韩免费高清视频 | 免费视频成人国产精品网站 | 欧美一区2区三区3区公司 | 欧洲精品在线观看 | 久久99久久99精品免视看婷婷 | 夜夜操天天艹 | 国产亚洲精品91 | 日韩一区不卡 | 国内精品一区二区三区 | 国产一级电影在线观看 | 成人亚洲性情网站www在线观看 | 狠狠视频| 粉嫩高清一区二区三区 | 中文字幕爱爱视频 | 成人欧美日韩一区二区三区 | 爱爱视频网 | 日韩视频一区二区 | 国产999精品久久久 日本视频一区二区三区 | 精品欧美一区二区在线观看欧美熟 | 国产亚洲www |