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






Load XmlDocument to XmlDataProvider

Load XmlDocument to XmlDataProvider
     

<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

   
    
    
    
    
  








Related examples in the same category

1.XmlDataProvider and XmlNamespaceMappingXmlDataProvider and XmlNamespaceMapping
2.Use XamlReader to read a Xaml string and convert to a ControlUse XamlReader to read a Xaml string and convert to a Control