版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、高級(jí)軟件人才實(shí)作培訓(xùn)專家ASP.NET服務(wù)器控件講師:王承偉高級(jí)軟件人才實(shí)作培訓(xùn)專家概要 基本控件 復(fù)雜數(shù)據(jù)綁定控件 頁碼條分頁控件 服務(wù)器控件內(nèi)置-增刪改查 功能高級(jí)軟件人才實(shí)作培訓(xùn)專家ASP.Net服務(wù)端基本控件介紹 ASP.Net服務(wù)端控件是ASP.Net對(duì)HTML的封裝,在C#代碼中就可以用txt1.Text=abc這種方式來修改input的值,ASP.Net會(huì)將服務(wù)端控件轉(zhuǎn)成HTML代碼輸出給瀏覽器。服務(wù)端控件是ASP.Net非常吸引初學(xué)者、非常容易上手的東西,也是最被人詬病的東西。物盡其用,服務(wù)端控件在內(nèi)網(wǎng)系統(tǒng)、互聯(lián)網(wǎng)系統(tǒng)的部分等訪問頻率不高的地方用的還是很適合的。(互聯(lián)網(wǎng)公司,產(chǎn)
2、品型公司(OA)) 在服務(wù)端控件的標(biāo)簽中寫的屬性如果不是控件內(nèi)置的屬性就會(huì)被原樣的輸出到客戶端 所有的ASP.Net大部分都是從Control、WebControl類繼承的,幾乎都有的成員有: (1)ClientID,控件在客戶端的Id,控件在服務(wù)端的Id不一定等于客戶端HTML中的Id,比如說在ListView等控件的模板中。因此如果要在客戶端通過JavaScript Dom、JQuery的getElementById、$(“#id”)來操作控件的話最好不要直接寫服務(wù)端Id,而是$(#)。用JQuery設(shè)置鼠標(biāo)移到控件上和從控件移開的不同樣式。在用戶控件中就可以看到ClientID和id的不
3、同。UserControl、母版、ListView。推薦永遠(yuǎn)用ClientID (2)Visible 屬性, 控件是否可見,如果Visible=False是不會(huì)轉(zhuǎn)到HTML中的,這和在HTML中給元素style.display=none效果是不一樣的。 (3)CssClass 屬性,控件的樣式名,就是HTML中控件的class屬性。也可以單獨(dú)修改BackColor、BorderStyle等屬性,但是不建議這么做,因?yàn)闀?huì)生成很多的內(nèi)聯(lián)樣式,生成html尺寸大,不 便于統(tǒng)一的修改。 (4)Attributes,用來設(shè)置獲取控件的額外屬性。和Dom中的setAttribute()、getAttrib
4、ute()是一樣的。Button1.Attributes“a1” = “2.jpg”; HTML在服務(wù)端看來也是屬性Button1.Attributes“onmouseover” = “alert(hello)”;高級(jí)軟件人才實(shí)作培訓(xùn)專家服務(wù)端控件的額外屬性 說明:所有的服務(wù)端控件不僅可以使用控件定義的屬性,還可以使用額外的屬性,這些屬性包括控件沒有封裝的HTML屬性(比如onmouseover等瀏覽器端頁當(dāng)作屬性),ASP.Net會(huì)將它不識(shí)別的屬性原封不動(dòng)的渲染到客戶端。在代碼中也可以通過Attributes屬性設(shè)置額外屬性:CheckBox1.Attributesonmouseover =
5、 alert(hello);高級(jí)軟件人才實(shí)作培訓(xùn)專家ASP.Net服務(wù)端基本控件11、Label控件。Text屬性為顯示文本。AssociatedControlID屬性用來關(guān)聯(lián)一個(gè)控件,如果為空的話會(huì)展示為一個(gè),如果指定為一個(gè)控件的id,則會(huì)展示為一個(gè)HTML中的并且將for屬性設(shè)置為被關(guān)聯(lián)控件的ClientId。2、Literal控件也是展示一段文本,但是Literal控件不會(huì)渲染任何額外的標(biāo)簽,就是將Text屬性的值展示出來而已。3、TextBox控件,文本框控件。TextMode屬性取值SingleLine、MultiLine、Password,分別渲染為input(type=text)
6、、textarea和input(type=password)。當(dāng)AutoPostBack屬性為true的時(shí)候,用戶焦點(diǎn)離開TextBox就會(huì)造成頁面Post,實(shí)現(xiàn)原理就是講ASP.Net原理時(shí)的AutoPostBack。TextChanged(需要AutoPostBack=true才會(huì)修改后觸發(fā),否則是頁面提交才觸發(fā)),文本發(fā)生變化的時(shí)候觸發(fā)。(以Post方式提交表單)ASP.Net中要提交表單的時(shí)候最好調(diào)用 doPostBack方法。4、RadioButton控件,對(duì)應(yīng)為input(type=radio),通過GroupName屬性進(jìn)行分組高級(jí)軟件人才實(shí)作培訓(xùn)專家ASP.Net服務(wù)端基本控件
7、 Button5、Button控件。OnClientClick屬性,當(dāng)用戶點(diǎn)擊按鈕的時(shí)候在瀏覽器端執(zhí)行的代碼,注意OnClientClick是字符串屬性,寫的代碼是JavaScript代碼,運(yùn)行在 瀏覽器端。6、LinkButton,用法和Button差不多,區(qū)別就是Button控件渲染為按鈕,而LinkButton渲染為超鏈接。不要用LinkButton來實(shí)現(xiàn)普通的超鏈接,因?yàn)長inkButton的href為一段javascript代碼,進(jìn)行的是表單的Post,無法“在新窗口中打開連接”。和講“行刪除”那個(gè)例子中href為javascript的超鏈接原理一樣。一般用Button就行,只有用戶
8、要求“長成超鏈接好”采用LinkButton,就是一個(gè)在瀏覽器中渲染成超鏈接,服務(wù)端當(dāng)成按鈕用的東西。HyperLink:IsPostBack=False,沒有提交表單內(nèi)容,沒有OnClick7、ImageButton控件也和Button差不多,只不過是顯示為圖片,渲染為input(type=image)。8、Button、LinkButton、ImageButton等控件都有CommandName、CommandArgument兩個(gè)屬性和Command,可以讓多個(gè)按鈕控件共享一個(gè)Command處理函數(shù),通過讀取對(duì)象e的CommandName、CommandArgument兩個(gè)屬性讀取被點(diǎn)擊按
9、鈕上設(shè)置的這兩個(gè)參數(shù)來執(zhí)行不同的操作。例子:編輯、刪除多行數(shù)據(jù)。這種用法在ListView等控件中用的最多。高級(jí)軟件人才實(shí)作培訓(xùn)專家ASP.Net服務(wù)端基本控件39、Panel控件用來盛放一些控件。如果設(shè)定GroupingText屬性那么就渲染為含有的div標(biāo)簽,也就是GroupBox效果,否則渲染為10、HyperLink控件,超鏈接。和LinkButton不一樣(常考),不會(huì)向服務(wù)器端Post,就是一個(gè)超鏈接。NavigateURL:鏈接地址;Text:顯示文本。如果設(shè)定ImageUrl屬性則會(huì)顯示圖片超鏈接。11、FileUpload控件,文件上傳控件。渲染成input(type=fil
10、e)。屬性: FileContent以流形式獲得上傳的文件;FileName 上傳文件名;HasFile Bool值,表示用戶是否選擇文件,SaveAs方法用于將文件保存到磁盤的指定位置。漏洞:文件上傳漏洞(上傳一個(gè)下載源代碼的aspx、Process.Start啟動(dòng)格式化,創(chuàng)建管理員、開啟遠(yuǎn)程桌面)。解決方法:只允許上傳指定類型文件,上傳文件夾不給執(zhí)行權(quán)限。高級(jí)軟件人才實(shí)作培訓(xùn)專家三種控件HTML控件,ASP.Net把HTML控件當(dāng)成普通字符串渲染到瀏覽器端,不去檢查正確性、無法在服務(wù)器端進(jìn)行處理。ASP.Net服務(wù)端控件,經(jīng)過ASP.Net高度封裝的控件,使用簡單,運(yùn)行在服務(wù)器端,可以在服
11、務(wù)端使用C#代碼進(jìn)行操作,會(huì)渲染到客戶端為HTML控件。runat=server的HTML控件。在HTML控件的基礎(chǔ)上添加runat=server,也是運(yùn)行在服務(wù)器端的,也可以服務(wù)端使用C#代碼進(jìn)行操作,也會(huì)渲染到客戶端,不像ASP.Net服務(wù)端控件那樣高度封裝,暴露的屬性大部分是普通HTML屬性。和ASP.Net服務(wù)端控件相比的好處是:當(dāng)需要在服務(wù)器端要對(duì)控件進(jìn)行操作的時(shí)候,如果控件沒有被ASP.Net服務(wù)端控件封裝的時(shí)候,用runat=server的HTML控件很方便,runat=server的HTML控件也會(huì)對(duì)虛擬路徑(/)、idClientID進(jìn)行處理,所以在使用虛擬路徑、UserCo
12、ntrol中也可能會(huì)用到onmouseover=document.getElementById().value=哈哈;直接在屬性中有問題,會(huì)把%直接輸出到瀏覽器端,因此不要在控件的屬性值中寫。畫圖:三種標(biāo)簽在服務(wù)器端對(duì)應(yīng)的控件類型高級(jí)軟件人才實(shí)作培訓(xùn)專家 run=server的html控件的好處,中庸! 1、不像ASP.Net服務(wù)端控件那么重量級(jí)、封裝的那么多,程序員可以比較好的控制生成內(nèi)容的質(zhì)量。更容易讓美工來使用,因?yàn)槊拦げ徽J(rèn)得asp:TextBox 2、相對(duì)于html控件: 1)能夠在服務(wù)端代碼中操作控件2) 能夠自動(dòng)處理虛擬路徑3) 可以處理ClientID。 選擇的順序:HTMLru
13、n=server的HTMLASP.Net服務(wù)端控件高級(jí)軟件人才實(shí)作培訓(xùn)專家HTML控件(runat=server)對(duì)應(yīng)服務(wù)器類型aHtmlAnchor;formHtmlForm;headHtmlHead; inputHtmlInputButton、HtmlInputCheckBox 、HtmlInputText 等;metaHtmlMeta;tableHtmlTable;trHtmlTableRow; tdHtmlTableCell;titleHtmlTitle。未單獨(dú)封裝的標(biāo)簽(比如div)或者自定義的標(biāo)簽(比如mmm)對(duì)應(yīng)類型為HtmlGenericControl。使用Attributes
14、屬性操作未封裝的屬性。不用單獨(dú)記憶,忘了的話,在aspx中弄一個(gè)標(biāo)簽試驗(yàn)一下就行。服務(wù)端HTML控件不像ASP.Net控件那樣封裝的高級(jí),比如ASP.Net控件的BgColor屬性為Color類型,而HTML控件的BgColor屬性則為字符串類型,需要開發(fā)人員設(shè)置合法的值高級(jí)軟件人才實(shí)作培訓(xùn)專家數(shù)據(jù)綁定控件簡介數(shù)據(jù)綁定分為數(shù)據(jù)源和數(shù)據(jù)綁定控件兩部分,數(shù)據(jù)綁定控件通過數(shù)據(jù)源來獲得數(shù)據(jù),通過數(shù)據(jù)源來隔離數(shù)據(jù)提供者和數(shù)據(jù)使用者,數(shù)據(jù)綁定控件通過數(shù)據(jù)源來對(duì)數(shù)據(jù)進(jìn)行修改,數(shù)據(jù)源有SqlDataSource、AccessDataSource、ObjectDataSource、LinqDataSource、
15、EntityDataSource、XmlDataSource等( SiteMapDataSource是SiteMap專用數(shù)據(jù)源),由于大部分項(xiàng)目都不會(huì)頁面直連數(shù)據(jù)庫(因?yàn)檫`反最基本的分層原則),所以SqlDataSource、AccessDataSource不會(huì)使用,LinqDataSource、EntityDataSource也是只有在很的采用Linq、EF的項(xiàng)目中才會(huì)用,XmlDataSource是處理XML數(shù)據(jù)是才可能會(huì)用。ObjectDataSource是Web開發(fā)中應(yīng)用最廣的數(shù)據(jù)源,也能很容易的進(jìn)行數(shù)據(jù)庫切換。數(shù)據(jù)綁定控件有列表數(shù)據(jù)綁定控件(DropDownList、RadioBut
16、tonList、ListBox、CheckBoxList、BulletedList等)和復(fù)雜控件(DataGrid、GridView、DetailsView、FormView、ListView、Repeater、DataList等,GridView等都是ListView子集)。復(fù)雜控件中DataGrid已經(jīng)不推薦使用,Repeater是最輕量級(jí)的組件,在互聯(lián)網(wǎng)的前臺(tái)用的最多,ListView是GridView、DetailsView、FormView、Repeater、DataList等這些控件的大一統(tǒng)者,那些控件的優(yōu)點(diǎn)ListView全都有,會(huì)了ListView那些控件也就會(huì)用了,因此數(shù)據(jù)綁
17、定控件主要講列表數(shù)據(jù)綁定控件、Repeater和ListView,項(xiàng)目中會(huì)用到FormView 、GridView。高級(jí)軟件人才實(shí)作培訓(xùn)專家ObjectDataSource(對(duì)象數(shù)據(jù)源)ObjectDataSource用來將一個(gè)類做為數(shù)據(jù)源,TypeName屬性為數(shù)據(jù)源類的全名, 有DeleteMethod(刪除方法)、InsertMethod(新增方法)、SelectMethod(查詢方法)、UpdateMethod(修改方法)等幾個(gè)屬性,分別為類中刪除、插入、查詢、更新數(shù)據(jù)的方法名,這些方法可能有參數(shù),參數(shù)的值是通過DeleteParameters、UpdateParameters、Ins
18、ertParameters等嵌套節(jié)點(diǎn)設(shè)置的。ObjectDataSource訪問自己寫的普通類,在類上標(biāo)注DataObject DataObjectMethod手工編寫ObjectDataSource太麻煩,使用可視化界面來完成。將ObjectDataSource拖放到界面上,在右上角的智能標(biāo)志上選擇“配置數(shù)據(jù)源”即可進(jìn)行配置。數(shù)據(jù)源類一般TypeNameAdapter類,選中類,選擇【下一步】,分別選擇對(duì)應(yīng)的獲得、刪除、更新、插入數(shù)據(jù)的方法。高級(jí)軟件人才實(shí)作培訓(xùn)專家列表綁定控件 DropDownList顯示來自于ObjectDataSource的數(shù)據(jù),選擇數(shù)據(jù)源( DataSourceID屬
19、性)為剛才的ObjectDataSource,并且設(shè)定顯示字段( DataTextField)和值字段(DataValueField)即可。RadioButtonList、ListBox、CheckBoxList、BulletedList等也都是這么用。 手工設(shè)定綁定,除了可以給控件的DataSourceID屬性設(shè)置一個(gè)數(shù)據(jù)源的方式進(jìn)行數(shù)據(jù)綁定(推薦),還可以在代碼中通過代碼設(shè)置綁定(舊版本的ASP.Net只能這樣綁定,新版本中不推薦)。 用代碼綁定可以將任何實(shí)現(xiàn)了IEnumerable接口的對(duì)象綁定到數(shù)據(jù)綁定控件。ListBox2.DataSource = new object3,5,6;L
20、istBox2.DataBind(); 由于數(shù)據(jù)綁定控件默認(rèn)會(huì)將數(shù)據(jù)保存在ViewState中,因此不會(huì)每次刷新頁面都會(huì)重新加載數(shù)據(jù),只有第一次需要加載(!IsPostBack) 由于代碼綁定在禁用ViewState的情況下有很多麻煩事,因此推薦用DataSourceID的方式,控件會(huì)自己來判斷是否應(yīng)該重新取得數(shù)據(jù)。 DropDownList原有“請(qǐng)選擇性別”和數(shù)據(jù)綁定項(xiàng)的共存:AppendDataBoundItems=“true”,把數(shù)據(jù)綁定的項(xiàng)加到后面。高級(jí)軟件人才實(shí)作培訓(xùn)專家復(fù)雜數(shù)據(jù)綁定控件 除了顯示Text、Value這樣簡單的列表數(shù)據(jù)綁定控件之外,還有更復(fù)雜的數(shù)據(jù)綁定控件的要求,比如
21、要將人員信息顯示在界面上,包含姓名、年齡、照片等。這時(shí)候就要使用Repeater、ListView等控件。高級(jí)軟件人才實(shí)作培訓(xùn)專家Repeater(今日重點(diǎn))Repeater(foreach)用于對(duì)綁定數(shù)據(jù)源中的數(shù)據(jù)進(jìn)行遍歷并按格式顯示,每條數(shù)據(jù)以什么格式顯示是由Repeater的來決定的,模板會(huì)多次顯示,就像foreach, ItemTemplate 中相當(dāng)于中的語句。姓名:年齡:。注意:%和#中間不能有空格。表示在這個(gè)位置顯示當(dāng)前實(shí)體對(duì)象的Name屬性,注意調(diào) 用Eval、Bind這些數(shù)據(jù)綁定方法的時(shí)候要用#。因?yàn)镋val就是將屬性顯示到指定的位置,因此也可以顯示到文本框中姓名:asp:T
22、extBox runat=server Text= /注意不要寫成Text= 因?yàn)橹械氖荂#代碼,是字符,而不是字符串還可以用在服務(wù)器控件中asp:TextBox Text= runat=server練習(xí):結(jié)合Js實(shí)現(xiàn)選中行高亮(把Repeater放到table標(biāo)簽中,ItemTemplate是tr)高級(jí)軟件人才實(shí)作培訓(xùn)專家Repeater其他模板1、,設(shè)置隔行的不同顯示風(fēng)格,如果設(shè)定,則奇數(shù)行用 模板,偶數(shù)行用模板asp:TextBox BackColor=Red ID=TextBox2 Text= runat=server/ 。設(shè)置隔行變色是為了防止數(shù)據(jù)太多看串行。2、HeaderTemp
23、late、FooterTemplate:頭部、尾部的模板,分別顯示在所有數(shù)據(jù)的前面和后面。3、SeparatorTemplate :兩項(xiàng)數(shù)據(jù)之間的分隔符,比如換行符高級(jí)軟件人才實(shí)作培訓(xùn)專家案例案例:顯示人員信息,姓名、年齡、照片(網(wǎng)站中都是存的圖片路徑1、ItemTemplate里面用服務(wù)端控件: 1)綁定的屬性必須用單引號(hào)myname= 。而HTML 控件則單引號(hào)、雙引號(hào)都行。2)屬性值里要么就是普通的值,要么就是整個(gè)綁定表達(dá)式,不能混著,比如ImageUrl=images/。HTML控件就沒有這個(gè)問題。能不用服務(wù)端控件就不用 可以這樣處理 練習(xí):顯示文章列表。id、標(biāo)題、作者、鏈接地址。如
24、果標(biāo)題過長則只顯示前10個(gè)字并且加省略號(hào)(不用樣式實(shí)現(xiàn))不要在aspx中寫過于復(fù)雜的C#代碼,如果代碼比較復(fù)雜,想辦法提取到cs中練習(xí):顯示友情鏈接列表,字段:網(wǎng)站名、超鏈接、友情鏈接類型(文本、圖片)、Logo圖片地址。 文本友情鏈接、圖片友情鏈接分別展示高級(jí)軟件人才實(shí)作培訓(xùn)專家ItemCommand可以在模板中放置Button控件(Button、LinkButton、ImageButton),模板中的按鈕一般不寫OnClick響應(yīng),而是響應(yīng)Repeater的ItemCommand。為Button控件設(shè)定CommandName、CommandArgument屬性,然后在ItemDataBou
25、nd讀取e的CommandName、CommandArgument屬性就可以獲得發(fā)生的命令和行參數(shù)了。如果對(duì)數(shù)據(jù)進(jìn)行了操作,則需要Repeater1.DataBind()來重新綁定,從數(shù)據(jù)庫中刷新最新的數(shù)據(jù)。案例:漲一歲,給被點(diǎn)擊的行的年齡增加1。(做點(diǎn)擊增加支持人數(shù))高級(jí)軟件人才實(shí)作培訓(xùn)專家ListViewRepeater一般只用來展示數(shù)據(jù),如果要增刪改查(CRUD)則用ListView更方便。使用向?qū)硎筁istView會(huì)自動(dòng)生成很多模板,免去手寫模板代碼的麻煩,再進(jìn)行手工調(diào)整即可。首先設(shè)定數(shù)據(jù)源,然后點(diǎn)擊智能提示中的“配置ListView”,選擇一種布局和樣式,然后根據(jù)需要勾選“啟用編輯
26、”、“啟用刪除”、“啟用插入”、“啟用分頁”,就會(huì)自動(dòng)生成常用的模板。注意這只是提高開發(fā)效率的一個(gè)快捷方式,不是唯一的途徑。LayoutTemplate為布局模板,布局模板中必須有一個(gè)ID為itemPlaceholder的服務(wù)端控件,項(xiàng)占位符(4.0以后不需要),什么類型無所謂,不會(huì)被顯示,itemPlaceholder前面就是相當(dāng)于Repeater中的HeaderTemplate,itemPlaceholder后面就是相當(dāng)于Repeater中的FooterTemplate,因此ListView中沒有這兩個(gè)模板。ItemTemplate是每一項(xiàng)的模板,AlternatingItemTempla
27、te是隔行顯示的模板,和Repeater一樣。EmptyDataTemplate為數(shù)據(jù)源沒有數(shù)據(jù)的時(shí)候顯示的內(nèi)容(Insert也算數(shù)據(jù)),這樣的話可以實(shí)現(xiàn)“沒有查找結(jié)果”、“對(duì)不起,找不到您要找的數(shù)據(jù)”等,InsertItemTemplate為插入數(shù)據(jù)界面的模板,EditItemTemplate為編輯數(shù)據(jù)的模板,InsertItemTemplate,為插入數(shù)據(jù)的模板, SelectedItemTemplate為標(biāo)記為Selected的行的模板。1、生成的樣式要提到style中,不要內(nèi)聯(lián)樣式。2、ItemTemplate里面一般也沒必要用asp:Label展示只讀數(shù)據(jù),所以直接輸出3、Layou
28、tTemplate中必須有一個(gè)id為itemPlaceholder的服務(wù)端控件,之上為頭,之下為尾。4、LayoutTemplate表頭內(nèi)容要漢化,所有Template中的不需要顯示的字段,比如Id,都要?jiǎng)h掉。高級(jí)軟件人才實(shí)作培訓(xùn)專家ListView EditItemTemplate、InsertItemTemplate中控件的綁定表達(dá)式為Text=startRowIndex andt.rownumstartRowIndex and t.rownum=startRowIndex+maximumRows手工添加這兩個(gè)參數(shù)startRowIndex、maximumRows參數(shù)3、配置ObjectD
29、ataSource的時(shí)候SElect方法選擇“GetpagedData”,才知道調(diào)用哪個(gè)方法取區(qū)間的數(shù)據(jù)4、將ObjectDataSource的設(shè)置EnablePaging=true,表示啟用自定義分頁。才知道使用自定義的分頁策略(經(jīng)常容易忘了設(shè)置)。設(shè)定 SelectCountMethod=GetCount屬性,指向總條數(shù)的方法。才知道調(diào)用哪個(gè)方法取總條數(shù)。5、因?yàn)镺bjectDataSource會(huì)自動(dòng)傳這兩個(gè)參數(shù)的值,所以SelectParameters中的兩個(gè)參數(shù)刪掉。6、配置ListView的時(shí)候不要忘了啟用分頁。如果是使用外置DataPager的話不要忘了設(shè)置PagedControl
30、Id屬性。分析執(zhí)行過程,參數(shù)是怎么傳過去的。高級(jí)軟件人才實(shí)作培訓(xùn)專家母版(MasterPage)網(wǎng)站的布局通常是統(tǒng)一的,上面是Logo、菜單條、下面是公司地址、版權(quán)聲明等。如果每個(gè)頁面都重復(fù)做這些功能的話:重復(fù)性勞動(dòng)、一旦修改那么每個(gè)頁面都要修改??梢允褂肐frame(內(nèi)嵌框架),F(xiàn)rameSet(框架集)技術(shù)來解決,但是FrameSet技術(shù)不靈活,而且很難進(jìn)行SEO,所以只有部分內(nèi)網(wǎng)系統(tǒng)還在用FrameSet,.Net中一般用母版(MasterPage)技術(shù)來解決這個(gè)問題。MasterPage是這樣一種技術(shù),把頁面布局畫好,在變化的內(nèi)容部分“留空”,留空的部分由子頁面填充內(nèi)容,這樣子頁面只要
31、填空就行,不用重復(fù)設(shè)計(jì)頁面結(jié)構(gòu),一旦要修改頁面結(jié)構(gòu)修改母版頁就可以,這樣所有頁面都會(huì)變化。母版頁“挖坑”,具體頁面“填坑”。母版頁、具體頁面中幾乎可以使用所有的普通WebForm頁面能夠使用的技術(shù)。高級(jí)軟件人才實(shí)作培訓(xùn)專家母版2添加一個(gè)“母版頁”,使用挖坑,新建的母版頁已經(jīng)自動(dòng)設(shè)置了兩個(gè)ContentPlaceHolder,還可以添加更多的ContentPlaceHolder。在id=head前面后面都加入一些script,在id=ContentPlaceHolder1前后也加入一些內(nèi)容。創(chuàng)建使用母版頁的具體頁面,WebSite是新建“Web窗體”的時(shí)候勾選“選擇模板頁”,WebApplication是新建“Web內(nèi)容窗體”
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 胸外科護(hù)士工作心得
- 2025年全球及中國單擺銑頭行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報(bào)告
- 2025-2030全球倒置行星滾柱絲杠行業(yè)調(diào)研及趨勢分析報(bào)告
- 2025年全球及中國虛擬試穿平臺(tái)行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報(bào)告
- 2025年全球及中國汽車天線定位器行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報(bào)告
- 2025年全球及中國重載有軌穿梭小車(RGV)行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報(bào)告
- 2025年全球及中國絲素蛋白敷料行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報(bào)告
- 2025-2030全球直線式桁架機(jī)器人行業(yè)調(diào)研及趨勢分析報(bào)告
- 2025-2030全球裝運(yùn)前檢驗(yàn)(PSI)服務(wù)行業(yè)調(diào)研及趨勢分析報(bào)告
- 2025年全球及中國電子鑰匙柜行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報(bào)告
- GA/T 2145-2024法庭科學(xué)涉火案件物證檢驗(yàn)實(shí)驗(yàn)室建設(shè)技術(shù)規(guī)范
- 電廠檢修管理
- 2024年中考語文試題分類匯編:非連續(xù)性文本閱讀(學(xué)生版)
- 2024年度窯爐施工協(xié)議詳例細(xì)則版B版
- 第一屆山東省職業(yè)能力大賽濟(jì)南市選拔賽制造團(tuán)隊(duì)挑戰(zhàn)賽項(xiàng)目技術(shù)工作文件(含樣題)
- 尿毒癥替代治療
- 【課件】2025屆高考英語一輪復(fù)習(xí)小作文講解課件
- 基底節(jié)腦出血護(hù)理查房
- 工程公司總經(jīng)理年終總結(jié)
- 2024年海南省高考地理試卷(含答案)
- 【企業(yè)盈利能力探析的國內(nèi)外文獻(xiàn)綜述2400字】
評(píng)論
0/150
提交評(píng)論