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

C#調用WalkTree()方法

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

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

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

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

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

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

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

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

在服務器端,我們使用一個 ASP.NET頁面來開始菜單的創建過程。這個頁面輸入了與集合相關聯的名稱空間XmlHierMenu:

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

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

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

【編輯推薦】

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

2009-08-31 16:33:28

C#調用Dispose

2009-09-01 11:04:59

C#調用擴展方法

2009-08-03 12:57:27

C#調用DLL

2009-09-11 10:59:06

Effective C調用Dispose()

2009-08-26 16:58:12

調用C# Thread

2009-08-05 09:40:02

C#調用DLL函數

2009-09-02 10:49:46

C#調用析構方法

2009-08-05 09:30:39

C#調用DLL函數

2024-05-16 12:33:37

C#編程指針

2009-08-11 11:07:49

Java調用C# we

2011-04-08 09:52:44

C++C#DLL

2009-08-17 16:18:47

C#調用CreateO

2009-09-18 19:09:41

C# COM組件

2009-08-05 16:29:18

C#調用C++動態鏈接

2009-08-31 10:39:15

C#調用ListEmp

2009-08-04 09:30:33

C#調用ImageAn

2025-03-04 04:00:00

C++代碼windows

2009-08-31 16:17:45

C#調用instanc

2009-08-18 15:49:19

C# 操作Excel

2009-04-03 13:20:05

C#擴展方法調用
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产欧美在线一区 | 国产视频中文字幕 | 欧美激情欧美激情在线五月 | 日本成人中文字幕在线观看 | 天天干天天操天天爽 | 国产精品久久久久久婷婷天堂 | 天天爽夜夜爽精品视频婷婷 | 国产黄色av网站 | 亚洲国产成人精 | 久久99精品久久久久久 | 色频| 亚洲 欧美 日韩 精品 | 亚洲一区二区三区在线视频 | 中文字幕免费视频 | 日韩av一区二区在线观看 | 亚洲h色| 日韩日b视频 | 91大神新作在线观看 | 久久久久免费观看 | 日日操夜夜操视频 | 久久天堂| 久久精品亚洲精品国产欧美 | 国产精品精品视频一区二区三区 | 精品欧美 | 91视频亚洲 | 日韩免费| 国产91丝袜在线播放 | 精品福利一区 | 日本人爽p大片免费看 | 国产精品亚洲综合 | 97伦理电影 | 宅女噜噜66国产精品观看免费 | 亚洲一区国产精品 | 亚洲二区视频 | 欧美成人猛片aaaaaaa | 在线观看av网站永久 | 久热国产精品视频 | av高清毛片 | 成人精品国产免费网站 | 亚洲视频在线观看 | 国产精品波多野结衣 |