ASP.NET2.0MasterPage技巧總結(jié)_.Net教程
推薦:編程高手 ASP.NET 狀態(tài)管理一般而言,HTTP協(xié)議是非狀態(tài)服務(wù),它不保存任何用戶請求信息。直至NetScape開始使用Cookies來保存用戶請求信息,Web應(yīng)用程序有了極大的發(fā)展。現(xiàn)在ASP.NET程序員可以使用很多種方式來保存用戶請
好久沒有更新博客了,想了想寫一篇總結(jié)一下關(guān)于MasterPage的小技巧,都是自己在實際工作中遇到問題->解決問題發(fā)現(xiàn),有更好的方法大家可直接指出。
1、關(guān)于MasterPage和Frameset的使用:網(wǎng)上很多帖子爭論到底用MasterPage還是Frameset,我覺得導(dǎo)航樹的系統(tǒng)還是Frameset好,尤其數(shù)導(dǎo)航樹非常復(fù)雜的時候,雖然VS.NET 2005不支持它的可視化設(shè)計,自己手寫html就行了,其實MasterPage就是繼承自UserControl做了一些擴(kuò)展,也不是什么新東西,MasterPage每次刷新整個頁面,感覺效率低。
2、關(guān)于MasterPage中引用Javascript,CSS的問題:如果所有套用模板的頁面都在同一個路徑,這個問題就不存在了,但實際中為了方便管理,往往會建立一些文件夾,將引用模板的頁面放在不同的文件加,這時在模板中引用的JS、CSS文件,由于路徑的問題,在套用它的頁面中不一定能用有用,可以用一下的方法在masterpage中來動態(tài)的添加JS、CSS文件的引用:
方法一:
string JSFile = ""; Response.Write(string.Format(JSFile,ResolveUrl("~/Javascript/jquery.js"))); |
這種方法雖然可以快速解決問題,但是Response.Write是將腳本的引用寫到html的最開始,這就破壞了xhtml的格式,會帶來各種存在的隱患,記得過去這么做的時候,同時在用asp.net ajax做開發(fā)的時候,發(fā)現(xiàn)ASP.NET AJAX AjaxControlToolkit中很多的控件不起作用了,后來發(fā)現(xiàn)是用了Response.Write的結(jié)果。
方法二:
string JSFile = ""; Page.Header.InnerHtml = string.Format(JSFile,ResolveUrl("~/Javascript/jquery.js")); |
這種方法也可以實現(xiàn)而且可以很好的解決方法中的問題。
方法三:
HtmlLink link = new HtmlLink(); link.Href = string.Format(JSFile,ResolveUrl("~/CSS/base.css"));; link.Attributes["type"] = "text/css"; page.Header.Controls.Add(link); |
這是注冊樣式的一種方法。
分享:讓ASP.NET程序自動為URL加上超級鏈接作為一個程序員,在完成設(shè)計后還要根據(jù)程序的情況以及用戶的反映不斷對程序進(jìn)行改進(jìn),這樣才能不斷地完善自己的作品。我在制作完軟件商務(wù)網(wǎng) 的論壇后,發(fā)現(xiàn)人們總喜歡在帖子中加上各種有用的URL
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發(fā)送Email實例(可帶附件)
- js實現(xiàn)廣告漂浮效果的小例子
- asp.net Repeater 數(shù)據(jù)綁定的具體實現(xiàn)
- Asp.Net 無刷新文件上傳并顯示進(jìn)度條的實現(xiàn)方法及思路
- Asp.net獲取客戶端IP常見代碼存在的偽造IP問題探討
- VS2010 水晶報表的使用方法
- ASP.NET中操作SQL數(shù)據(jù)庫(連接字符串的配置及獲取)
- asp.net頁面?zhèn)髦禍y試實例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲過程實現(xiàn)分頁示例代碼
- 相關(guān)鏈接:
- 教程說明:
.Net教程-ASP.NET2.0MasterPage技巧總結(jié)。