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

Home
VB.Net Tutorial
1.Language Basics
2.Data Type
3.Operator
4.Statements
5.Date Time
6.Class Module
7.Development
8.Collections
9.Generics
10.Attributes
11.Event
12.LINQ
13.Stream File
14.GUI
15.GUI Applications
16.Windows Presentation Foundation
17.2D Graphics
18.I18N Internationlization
19.Reflection
20.Regular Expressions
21.Security
22.Socket Network
23.Thread
24.Windows
25.XML
26.Database ADO.net
27.Design Patterns
VB.Net
VB.Net by API
VB.Net Tutorial » Windows Presentation Foundation » UI Element 
16.50.13.Logical Visual Tree Sample
<Window x:Class="WpfApplication1.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="LogicalVisualTreeSample" Height="300" Width="300">
  <WrapPanel Name="rootPanel">
    <Button>_Click me</Button>
  </WrapPanel>
</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.Diagnostics


Namespace WpfApplication1
  Public Partial Class Window1
    Inherits System.Windows.Window

    Public Sub New()
      InitializeComponent()
      DumpLogicalTree(rootPanel)
    End Sub
    Protected Overrides Sub OnContentRendered(As EventArgs)
      MyBase.OnContentRendered(e)
      DumpVisualTree(rootPanel)
    End Sub

    Private Sub DumpLogicalTree(parent As Object)
      Dim typeName As String = parent.[GetType]().Name
      Dim name As String = Nothing
      Dim doParent As DependencyObject = TryCast(parent, DependencyObject)

      If doParent IsNot Nothing Then
        name = DirectCast(If(doParent.GetValue(FrameworkElement.NameProperty)""), String)
      Else
        name = parent.ToString()
      End If

      Debug.WriteLine(typeName)
      Console.WriteLine(name)
      If doParent Is Nothing Then
        Return
      End If

      For Each child As Object In LogicalTreeHelper.GetChildren(doParent)
        DumpLogicalTree(child)
      Next
    End Sub

    Private Sub DumpVisualTree(parent As DependencyObject)
      Dim typeName As String = parent.[GetType]().Name
      Dim name As String = DirectCast(If(parent.GetValue(FrameworkElement.NameProperty)""), String)

      Debug.WriteLine(typeName)
      Console.WriteLine(name)

      Dim As Integer = 0
      While i <> VisualTreeHelper.GetChildrenCount(parent)
        Dim child As DependencyObject = VisualTreeHelper.GetChild(parent, i)
        DumpVisualTree(child)
        i += 1
      End While
    End Sub

  End Class
End Namespace
WPF Logical Visual Tree Sample
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
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.