XmlDocumentSchema クラス
アセンブリ: System.Design (system.design.dll 内)


XmlDocumentSchema クラスは、デザイン時に XML ドキュメントの構造的な要素を一覧表示るために、カスタム コントロール デザイナのコンポーネントによって使用されます。ドキュメント要素の一覧を取得して、ユーザーがデザイン時に UI 機能でドキュメント要素を選択できるようにするためには、XmlDocumentSchema クラスを使用します。

XmlDocumentSchema オブジェクトを使用して XML ドキュメントの構造体を TreeView コントロールに表示する方法を次のコード例に示します。
Imports Microsoft.VisualBasic Imports System.Xml Imports System.Web Imports System.Web.UI.WebControls Imports System.Web.UI.Design Public Class XmlDocumentSchemaSample ' This method fills a TreeView Web control from an XML file. Public Sub FillTreeView(ByVal treeVw As TreeView, ByVal fileName As String) ' Get a reference to the current HttpContext Dim currentContext As HttpContext = HttpContext.Current Dim i, j, k As Integer Dim CurNode, NewNode As TreeNode ' Create and load an XML document Dim XDoc As New XmlDocument() XDoc.Load(currentContext.Server.MapPath(fileName)) ' Get a map of the XML Document Dim xSchema As New XmlDocumentSchema(XDoc, "") ' Get a list of the root child views Dim RootViews As IDataSourceViewSchema() = xSchema.GetViews() ' Add each child to the TreeView For i = 0 To RootViews.Length - 1 NewNode = New TreeNode(RootViews(i).Name) treeVw.Nodes.Add(NewNode) CurNode = treeVw.Nodes(i) ' Get a list of children of this child Dim ChildViews As IDataSourceViewSchema() = RootViews(i).GetChildren() ' Add each child to the child node of the TreeView For j = 0 To ChildViews.Length - 1 NewNode = New TreeNode(ChildViews(j).Name) CurNode.ChildNodes.Add(NewNode) CurNode = CurNode.ChildNodes(j) ' Get a list of children of this child Dim ChildVws As IDataSourceViewSchema() = ChildViews(j).GetChildren() ' Add each child to the child node For k = 0 To ChildVws.Length - 1 NewNode = New TreeNode(ChildVws(k).Name) CurNode.ChildNodes.Add(NewNode) Next ' Select the parent of the current child CurNode = CurNode.Parent Next ' Select the parent of the current child CurNode = CurNode.Parent Next End Sub End Class
// This method fills a TreeView Web control from an XML file. public void FillTreeView(TreeView treeVw, string fileName) { // Get a reference to the current HttpContext HttpContext currentContext = HttpContext.Current; int i, j, k; TreeNode CurNode, NewNode; // Create and load an XML document XmlDocument XDoc = new XmlDocument(); XDoc.Load(currentContext.Server.MapPath(fileName)); // Get a map of the XML Document XmlDocumentSchema xSchema = new XmlDocumentSchema(XDoc, ""); // Get a list of the root child views IDataSourceViewSchema[] RootViews = xSchema.GetViews(); // Add each child to the TreeView for (i = 0; i < RootViews.Length; i++) { NewNode = new TreeNode(RootViews[i].Name); treeVw.Nodes.Add(NewNode); CurNode = treeVw.Nodes[i]; // Get a list of children of this child IDataSourceViewSchema[] ChildViews = RootViews[i].GetChildren(); // Add each child to the child node of the TreeView for (j = 0; j < ChildViews.Length; j++) { NewNode = new TreeNode(ChildViews[j].Name); CurNode.ChildNodes.Add(NewNode); CurNode = CurNode.ChildNodes[j]; // Get a list of children of this child IDataSourceViewSchema[] ChildVws = ChildViews[j].GetChildren(); // Add each child to the child node for (k = 0; k < ChildVws.Length; k++) { NewNode = new TreeNode(ChildVws[k].Name); CurNode.ChildNodes.Add(NewNode); } // Select the parent of the current child CurNode = CurNode.Parent; } // Select the parent of the current child CurNode = CurNode.Parent; } }

System.Web.UI.Design.XmlDocumentSchema


Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- XmlDocumentSchema クラスのページへのリンク