Load XmlDocument to XmlDataProvider : XmlDataProvider « Windows Presentation Foundation « VB.Net Tutorial






<Window x:Class="WpfApplication1.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="clr-namespace:WpfApplication1"
    Title="Window1" Height="400" Width="600" Loaded="Window_Loaded" Name="window">
    <Window.Resources>
        <XmlDataProvider x:Key="xaml" />
    </Window.Resources>
    <StackPanel>
        <TreeView Name="treeView1" ItemsSource="{Binding Source={StaticResource xaml}, XPath=*}">
            <TreeView.ItemTemplate>
                <HierarchicalDataTemplate ItemsSource="{Binding XPath=*}">
                    <TextBlock Text="{Binding Path=Name}" />
                </HierarchicalDataTemplate>
            </TreeView.ItemTemplate>
        </TreeView>
        <TextBox Text="{Binding ElementName=treeView1, Path=SelectedItem.OuterXml, Mode=OneWay}" TextWrapping="Wrap" />
    </StackPanel>
</Window>
//File:Window.xaml.vb

Imports System
Imports System.Collections.Generic
Imports System.Linq
Imports System.Text
Imports System.Windows
Imports System.Windows.Controls
Imports System.Windows.Data
Imports System.Windows.Documents
Imports System.Windows.Input
Imports System.Windows.Media
Imports System.Windows.Media.Imaging
Imports System.Windows.Navigation
Imports System.Windows.Shapes
Imports System.IO
Imports System.Windows.Markup
Imports System.Xml

Namespace WpfApplication1
  Public Partial Class Window1
    Inherits Window
    Public Sub New()
      InitializeComponent()
    End Sub

    Private Sub Window_Loaded(sender As Object, e As RoutedEventArgs)
      Dim xaml As String = XamlWriter.Save(Me)

      Dim doc As New XmlDocument()
      doc.LoadXml(xaml)

      Dim provider As XmlDataProvider = DirectCast(FindResource("xaml"), XmlDataProvider)
      provider.Document = doc
      provider.Refresh()
    End Sub
  End Class
End Namespace
WPF Load Xml Document To Xml Data Provider








16.103.XmlDataProvider
16.103.1.XmlDataProvider and XmlNamespaceMappingXmlDataProvider and XmlNamespaceMapping
16.103.2.Use XamlReader to read a Xaml string and convert to a ControlUse XamlReader to read a Xaml string and convert to a Control
16.103.3.Load XmlDocument to XmlDataProviderLoad XmlDocument to XmlDataProvider