這篇文章主要介紹了ASP.NET網(wǎng)站導(dǎo)航及導(dǎo)航控件的使用方法,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

網(wǎng)站導(dǎo)航?
傳統(tǒng)的網(wǎng)站導(dǎo)航需要我們在是在頁面上弄超鏈接的方式來實現(xiàn)的,在頁面修改或移動的的時候需要一一在每個頁中都要進行修改,這樣會很麻煩。
在網(wǎng)站中建立網(wǎng)站地圖,也就是把所有的鏈接地址放在一個專門的文件中進行統(tǒng)一管理,這樣就很方面的進行管理。
怎么弄網(wǎng)站導(dǎo)航?怎么做?
需要在VS中新建網(wǎng)站地圖文件,再把網(wǎng)站地圖文件與我們想要的導(dǎo)航控件相關(guān)聯(lián),這樣就可以實現(xiàn)導(dǎo)航的效果了,我們要更改某個地址,就直接在站點地圖.siteMap文件中更改就行了。
vs中如何添加網(wǎng)站地圖?
在vs中新建項中選擇"站點地圖"新建站點地圖。
要使用站點地圖,我們需要把站點地圖文件添加到網(wǎng)站根文件夾下。
在新建一個站點地圖文件的時候,默認的代碼如下所示:
<?xml version="1.0"encoding="utf-8" ?> <siteMapxmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" > <siteMapNodeurl="" title="" description=""> <siteMapNodeurl=""title="" description="" /> <siteMapNodeurl=""title="" description="" /> </siteMapNode> </siteMap>
我們可以從代碼中看出文件的根元素siteMap包含了<siteMapNode>元素,這些<siteMapNode>元素形成樹形結(jié)構(gòu),第一層為網(wǎng)站的主頁。
<siteMapNode>元素常用的屬性表。

復(fù)雜的導(dǎo)航為了更能清晰的顯示,我們可以多用幾個.mapMap文件,也就是嵌套網(wǎng)站地圖。
我們在新建一個文件夾,在這個文件夾下建兩個網(wǎng)站地圖文件,Products.siteMap和Servers.sitMap,建立Web.siteMap放到網(wǎng)站的根目錄下,用web.site的siteMapFile屬性來鏈接其他兩個.siteMap文件。 代碼如下所示:
Products.siteMap:
<?xml version="1.0"encoding="utf-8" ?> <siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" > <siteMapNode title="Products" description="我們的產(chǎn)品" url="~/chap/Products.aspx"> <siteMapNode url="~/chap/Software.aspx"title="軟件" description="軟件的提供" /> <siteMapNode url="~/chap/Hardware.aspx"title="硬件" description="硬件的提供" /> </siteMapNode> </siteMap> Services.siteMap文件: <?xml version="1.0"encoding="utf-8" ?> <siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" > <siteMapNodeurlsiteMapNodeurl="~/chap/Services.aspx"title="Services" description="我們提供的服務(wù)"> <siteMapNode url="~/chap/Training.aspx"title="訓(xùn)練" description="訓(xùn)練" /> <siteMapNode url="~/chap/Consulting.aspx"title="咨詢" description="問題咨詢" /> <siteMapNode url="~/chap/Support.aspx"title="支持" description="技術(shù)支持" /> </siteMapNode> </siteMap>
Web.siteMap文件:
<?xml version="1.0"encoding="utf-8" ?> <siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" > <siteMapNodeurlsiteMapNodeurl="home.aspx" title="home" description="home"> <siteMapNode siteMapFile="~/chap/Products.sitemap" /> <siteMapNodesiteMapFilesiteMapNodesiteMapFile="~/chap/Services.sitemap" /> </siteMapNode> </siteMap>
導(dǎo)航地圖建立完了,接下來顯示導(dǎo)航地圖。
SiteMapPath控件顯示導(dǎo)航
直接把控件拖動到要導(dǎo)航的頁面就可以了。控件會自動與導(dǎo)航地圖進行綁定。
顯示:

TreeView控件顯示導(dǎo)航
TreeView控件通常用來樹形結(jié)構(gòu)的站點導(dǎo)航,可以用來顯示XML、表格或關(guān)系數(shù)據(jù)。
基本的操作:
TreeView每個節(jié)點其實都一個是個TreeNode類的對象。可以通過編程操作TreeNode對象動態(tài)的添加和修改。可以通過數(shù)據(jù)源控件進行綁定,例如通過SiteMapDataSource空調(diào)感覺愛你或XmlDataSource控件。
TreeViewcollapseAll()和ExpandAll()方法折疊和展開節(jié)點。利用Nodes.Add()方法添加到節(jié)點到控件中,Nodes.Remove()方法刪除指定節(jié)點。
DEMO:
在這里只是為了熟悉TreeView,也沒有實現(xiàn),鼠標(biāo)右擊對TreeView操作,和只刷新TreeView控件,以及和數(shù)據(jù)綁定。只是為了熟悉TreeView而熟悉TreeView。
myTreeView代碼:
<%@ PageLanguage="C#" AutoEventWireup="true"CodeFile="Menu.aspx.cs"Inherits="Menu" %> <!DOCTYPE html PUBLIC "-//W3C//DTDXHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <formidformid="form1" runat="server"> <div> </div> <asp:Menu ID="Menu1" runat="server"> <Items> <asp:MenuItem Text="米老師" Value="米老師"></asp:MenuItem> <asp:MenuItem Text="七期" Value="七期"> <asp:MenuItem Text="師姐一" Value="師姐一"></asp:MenuItem> <asp:MenuItem Text="師姐二" Value="師姐二"></asp:MenuItem> </asp:MenuItem> <asp:MenuItem Text="八期" Value="八期"> <asp:MenuItem Text="英語部" Value="英語部"></asp:MenuItem> <asp:MenuItem Text="值日生部門" Value="值日生部門"></asp:MenuItem> </asp:MenuItem> <asp:MenuItem Text="九期" Value="九期"></asp:MenuItem> <asp:MenuItem Text="十期" Value="十期"></asp:MenuItem> <asp:MenuItem Text="十一期" Value="十一期"></asp:MenuItem> </Items> </asp:Menu> </form> </body> </html>
C#代碼:
public partial class chap_myTreeView: System.Web.UI.Page
{
//移除當(dāng)前節(jié)點
protectedvoid RemoveNode_Click(object sender, EventArgs e)
{
//如果存在當(dāng)前節(jié)點。
if (myTreeView.SelectedNode !=null)
{
//獲取當(dāng)前節(jié)點的父節(jié)點。
TreeNode parentNode= myTreeView.SelectedNode.Parent;
//移除當(dāng)前節(jié)點。
if (parentNode !=null)
{ parentNode.ChildNodes.Remove(myTreeView.SelectedNode); }
else
{
myTreeView.Nodes.Remove(myTreeView.SelectedNode);
}
}
}
//添加當(dāng)前節(jié)點。
protectedvoid AddNode_Click(object sender, EventArgse)
{
//如果添加當(dāng)前節(jié)點的值為空,則返回。
if (txtAdd.Text.Trim().Length <1)
{
return;
}
//建立節(jié)點的childNode,設(shè)置Value屬性。
TreeNode chileNode = new TreeNode();
//給新加的節(jié)點賦值。
chileNode.Value = txtAdd.Text.Trim();
//判斷是否選中一個節(jié)點。
if (myTreeView.SelectedNode !=null)//如果存在當(dāng)前節(jié)點。
{
//將新的childNode對象添加到當(dāng)前節(jié)點。
myTreeView.SelectedNode.ChildNodes.Add(chileNode);
txtAdd.Text = "";
}
else
{
//作為根節(jié)點添加到樹中。
myTreeView.Nodes.Add(chileNode);
//清楚文本框。
txtAdd.Text = "";
}
}
//將樹全部的折疊。
protectedvoid FlodNodes_Click(object sender, EventArgs e)
{
myTreeView.CollapseAll();//將樹全部折疊起來.
}
//全部展開.
protectedvoid OpenAllNode_Click(object sender, EventArgs e)
{
myTreeView.ExpandAll();//全部展開樹.
}
}效果:

感謝你能夠認真閱讀完這篇文章,希望小編分享的“ASP.NET網(wǎng)站導(dǎo)航及導(dǎo)航控件的使用方法”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!
當(dāng)前標(biāo)題:ASP.NET網(wǎng)站導(dǎo)航及導(dǎo)航控件的使用方法-創(chuàng)新互聯(lián)
當(dāng)前地址:http://chinadenli.net/article28/dgpsjp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、軟件開發(fā)、網(wǎng)站改版、標(biāo)簽優(yōu)化、網(wǎng)站維護、網(wǎng)站導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容