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

C#調(diào)用WalkTree()方法

開發(fā) 后端
這里介紹C#調(diào)用WalkTree()方法,XmlMenus集合的代碼開始時要聲明一個XmlHierMenu 名稱空間,接下來要引用 System、 System.Xml、 System.Collections和System.IO 名稱空間

本文向大家介紹C#調(diào)用WalkTree()方法,可能好多人還不知道C#調(diào)用WalkTree()方法,沒有關(guān)系,看完本文你肯定有不少收獲,希望本文能教會你更多東西。

菜單應(yīng)用程序使用了3個 XML 文檔:menuItems.xml、menuItems2.xml 和menuItems3.xml,它們用于標(biāo)記單獨的菜單項目。XML的處理和操作由一個叫做xmlMenus.dll的集合完成,這個集合被服務(wù)器端的一個ASP.NET 文件createMenus.aspx所使用。在客戶端的動態(tài)HTML (DHTML)內(nèi)容使用了一個層疊格式表文件和一個JavaScript文件,這些文件聯(lián)合在一起生成了本文開始部分的圖示結(jié)果。

我們在List 1的代碼顯示了用來標(biāo)記單獨菜單項目的XML文檔的一部分。文檔中的主元素命名為menuItem,它可以包含一個名字和超級鏈接元素以及額外的menuItem 子元素。這種關(guān)系可以用來創(chuàng)建包含子菜單的菜單系統(tǒng),就象Windows的開始菜單一樣。
由于 XML已經(jīng)標(biāo)出了分層關(guān)系,因此就可以利用循環(huán)在不同元素之間行走:當(dāng)使用XmlDocument、XmlNode和XmlNodeList類創(chuàng)建子節(jié)點時,我們可以反復(fù)調(diào)用WalkTree() 函數(shù)以顛倒父/子關(guān)系。其它的類如 ArrayList和 StreamWriter用于將相關(guān)菜單歸類到數(shù)組中,然后在適當(dāng)時間將所生成的菜單結(jié)構(gòu)寫入一個文件中。

XmlMenus集合的代碼開始時要聲明一個XmlHierMenu 名稱空間,接下來要引用 System、 System.Xml、 System.Collections和System.IO 名稱空間:

  1. using System;  
  2. using System.Xml;  
  3. using System.Collections;  
  4. using System.IO;  

在這部分代碼之后要創(chuàng)建3個構(gòu)造器。一個構(gòu)造器不接收變量,只對變量進行初始化。下一個構(gòu)造器接收一個圖象文件的定制路徑。最后一個構(gòu)造器在不經(jīng)常對XML菜單進行刷新的情況下,允許將由集合生成的輸出存儲到一個文件中。最后一個構(gòu)造器所生成的文件可以被靜態(tài)地包含在一個 ASP.NET文件中,而不是在各個Web頁面請求時隨時地生成。

這個方法負責(zé)進行XML文檔的裝載和解析,找到根節(jié)點,然后在根的子節(jié)點之間循環(huán)。如果發(fā)現(xiàn)一個子節(jié)點本身還有子節(jié)點,就C#調(diào)用WalkTree()方法,并且把這些子節(jié)點都傳遞到其中。如果這些子節(jié)點還有子節(jié)點,就再次C#調(diào)用WalkTree()方法。這個過程循環(huán)進行直到不再發(fā)現(xiàn)增加的子節(jié)點。Walktree()方法的代碼可以參看List 3。
在C#調(diào)用WalkTree()方法并且對不同的節(jié)點進行分析的同時,要解析 menuItem節(jié)點,將來自其超級鏈接和名字節(jié)點的數(shù)據(jù)放在數(shù)組列表中。對整個 XML文檔都進行解析之后,數(shù)組列表的內(nèi)容就被傳遞回調(diào)用的ASP.NET的頁面,然后使用Response對象寫出信息。從這時起,客戶端的 JavaScript代碼就開始控制DHTML 菜單了。

在服務(wù)器端,我們使用一個 ASP.NET頁面來開始菜單的創(chuàng)建過程。這個頁面輸入了與集合相關(guān)聯(lián)的名稱空間XmlHierMenu:

  1. <%@ page language="C#" %> 
  2. <%@ Import Namespace="XmlHierMenu" %>  

然后,將樣式表文件和 JavaScript文件包含在文件的 代碼區(qū)中。最后,在 ASP.NET 頁面底部的代碼用來引用上面提到的CreateMenu() 方法與WalkTree()方法。

在ASP.NET 頁面中所找到的C# 代碼只是建立了到不同的XML文檔的路徑,并且對 XmlMenu 類進行了例示。一旦對這個類進行了例示,就對 CreateMenu()方法進行調(diào)用。這個方法接收菜單名以及到這個菜單的XML文檔的文件路徑。在本例中,要創(chuàng)建3個名為menu1、 menu2和 menu3 的菜單,然后在一個ASP.NET頁面中使用。這個應(yīng)用程序在一個給定頁面中可以支持無窮多的菜單,但是我們建議菜單數(shù)目不要過多,因為每增加一個菜單,發(fā)送到客戶端的文件規(guī)模都會增加。

【編輯推薦】

  1. C#窗體里調(diào)用淺談
  2. C#調(diào)用ListEmployee命令
  3. C# CreateEmployeeDefinition()函數(shù)
  4. C#實現(xiàn)斷點續(xù)傳詳細剖析
  5. C# Employee對象淺談
責(zé)任編輯:佚名 來源: 博客園
相關(guān)推薦

2009-08-31 16:33:28

C#調(diào)用Dispose

2009-09-01 11:04:59

C#調(diào)用擴展方法

2009-08-03 12:57:27

C#調(diào)用DLL

2009-09-11 10:59:06

Effective C調(diào)用Dispose()

2009-09-02 10:49:46

C#調(diào)用析構(gòu)方法

2009-08-05 09:40:02

C#調(diào)用DLL函數(shù)

2009-08-26 16:58:12

調(diào)用C# Thread

2009-08-05 09:30:39

C#調(diào)用DLL函數(shù)

2024-05-16 12:33:37

C#編程指針

2009-08-11 11:07:49

Java調(diào)用C# we

2011-04-08 09:52:44

C++C#DLL

2009-08-17 16:18:47

C#調(diào)用CreateO

2009-09-18 19:09:41

C# COM組件

2009-08-05 16:29:18

C#調(diào)用C++動態(tài)鏈接

2009-08-31 10:39:15

C#調(diào)用ListEmp

2009-08-04 09:30:33

C#調(diào)用ImageAn

2025-03-04 04:00:00

C++代碼windows

2009-08-31 16:17:45

C#調(diào)用instanc

2009-08-18 15:49:19

C# 操作Excel

2009-04-03 13:20:05

C#擴展方法調(diào)用
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 免费在线黄色av | 热re99久久精品国产99热 | 在线观看视频91 | 一级毛片免费完整视频 | 成人一区二 | 日韩在线不卡视频 | 狠狠做六月爱婷婷综合aⅴ 国产精品视频网 | 亚洲成人福利在线观看 | 亚洲成人精品国产 | 免费美女网站 | 中文精品久久 | 亚洲国产成人精品在线 | 欧美不卡一区二区三区 | 欧美专区在线 | 天天操操操操操 | 国产成人精品网站 | 亚洲精品麻豆 | 国产在线一级片 | 国产精品高清在线 | 日韩另类| 狠狠色香婷婷久久亚洲精品 | av黄在线观看 | 欧美第一页| 亚洲一区二区三区四区av | av激情在线 | 91精品国产一区二区三区 | 国产综合精品 | 秋霞电影一区二区三区 | 91成人小视频 | 午夜三级在线观看 | 国产高清一区 | 成年视频在线观看福利资源 | 欧美激情亚洲激情 | 国产精品成人久久久久 | 亚洲精品乱码久久久久久9色 | 九九综合 | 午夜亚洲 | 成年人视频在线免费观看 | 亚洲视频 欧美视频 | 2019精品手机国产品在线 | 久久久一区二区三区四区 |