XmlDocumentSchema Klas

Definitie

Vertegenwoordigt de structuur of het schema van een XmlDocument. Deze klasse kan niet worden overgenomen.

public ref class XmlDocumentSchema sealed : System::Web::UI::Design::IDataSourceSchema
public sealed class XmlDocumentSchema : System.Web.UI.Design.IDataSourceSchema
type XmlDocumentSchema = class
    interface IDataSourceSchema
Public NotInheritable Class XmlDocumentSchema
Implements IDataSourceSchema
Overname
XmlDocumentSchema
Implementeringen

Voorbeelden

In het volgende codevoorbeeld wordt een XmlDocumentSchema object gebruikt om de structuur van een XML-document in een TreeView besturingselement weer te geven.

// 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;
    }
}
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

Opmerkingen

De XmlDocumentSchema klasse wordt gebruikt door aangepaste ontwerponderdelen voor besturingselementen om de structurele elementen van een XML-document op het ontwerptijd weer te geven. Gebruik de klasse XmlDocumentSchema om lijsten met documentelementen te vullen, zodat gebruikers tijdens het ontwerp documentelementen kunnen selecteren in ui-functies.

Constructors

Name Description
XmlDocumentSchema(XmlDocument, String)

Hiermee maakt u een exemplaar van de XmlDocumentSchema klasse met behulp van een opgegeven XmlDocument en een XPath-tekenreeks.

Methoden

Name Description
Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
GetViews()

Hiermee haalt u een matrix op met informatie over elk onderliggend knooppunt dat begint bij het knooppunt dat wordt geïdentificeerd door de xPath parameter in de constructor, of elk onderliggend knooppunt dat begint bij de documenthoofdmap als de xPath parameter leeg is.

MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
ToString()

Retourneert een tekenreeks die het huidige object vertegenwoordigt.

(Overgenomen van Object)

Van toepassing op

Zie ook