Print Logical Tree : UI Element « Windows Presentation Foundation « VB.Net Tutorial






<Window x:Class="WPFTrees.Window1"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  Title="WPFTrees" Height="304" Width="702" Name="MyWindow">
  <DockPanel Name="DockPanel1">
    <StackPanel DockPanel.Dock="Left" Margin="6,4,4,4" >
      <Canvas Name="canvas1">
        <Button Name="button1">
          <Ellipse Name="ellipse1" Height="100" Width="100" Fill="Red"></Ellipse>
        </Button>
      </Canvas>
    </StackPanel>
    <Button DockPanel.Dock="Left" Height="20" Width="100" 
      HorizontalAlignment="Left" Margin="1,4,4,4" Click="buttonPrint_Click">Print Trees</Button>
  </DockPanel>
</Window>
//File:Window.xaml.vb

Imports System
Imports System.Collections.Generic
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.Shapes

Imports System.Collections

Namespace WPFTrees

  Public Partial Class Window1
    Inherits System.Windows.Window

    Public Sub New()
      InitializeComponent()
    End Sub
    Public Sub PrintLogicalTree(obj As [Object])
      If TypeOf obj Is FrameworkElement Then
        Dim element As FrameworkElement = DirectCast(obj, FrameworkElement)
        Console.WriteLine(element.[GetType]().ToString())

        Dim children As IEnumerable = LogicalTreeHelper.GetChildren(element)
        For Each child As [Object] In children
          PrintLogicalTree(child)
        Next
      End If
    End Sub

    Private Sub buttonPrint_Click(sender As [Object], e As RoutedEventArgs)
      PrintLogicalTree(Me.button1)
    End Sub

  End Class

End Namespace
WPF Print Logical Tree








16.50.UI Element
16.50.1.Find enclosure componentFind enclosure component
16.50.2.Clear locally set values and restore the default values of dependency propertiesClear locally set values and restore the default values of dependency properties
16.50.3.PresentationTraceSources.SetTraceLevel(binding,PresentationTraceLevel.High);PresentationTraceSources.SetTraceLevel(binding,PresentationTraceLevel.High);
16.50.4.UI Element Mouse Clicked EventsUI Element Mouse Clicked Events
16.50.5.Programmatically Extract an Element's Style with DefaultStyleKeyPropertyProgrammatically Extract an Element's Style with DefaultStyleKeyProperty
16.50.6.Print Logical TreePrint Logical Tree
16.50.7.Print Visual TreePrint Visual Tree
16.50.8.About Dialog with Tree WalkingAbout Dialog with Tree Walking
16.50.9.Changing graphical elementsChanging graphical elements
16.50.10.UIElement CountUIElement Count
16.50.11.Use Linq to get control from a containerUse Linq to get control from a container
16.50.12.Find inner visual elementFind inner visual element
16.50.13.Logical Visual Tree SampleLogical Visual Tree Sample
16.50.14.Point Hit Test with VisualTreeHelper.HitTestPoint Hit Test with VisualTreeHelper.HitTest
16.50.15.Change the Visibility property of a UIElement.Change the Visibility property of a UIElement.
16.50.16.Mixing graphics with Control ElementsMixing graphics with Control Elements