Visual Tree Helper : FrameworkElement « UI Controls « Silverlight






Visual Tree Helper

Visual Tree Helper
    

<UserControl x:Class='SilverlightApplication3.MainPage'
    xmlns='http://schemas.microsoft.com/winfx/2006/xaml/presentation' 
    xmlns:x='http://schemas.microsoft.com/winfx/2006/xaml'
    xmlns:d='http://schemas.microsoft.com/expression/blend/2008' 
    xmlns:mc='http://schemas.openxmlformats.org/markup-compatibility/2006' 
    mc:Ignorable='d' 
    d:DesignWidth='640' 
    d:DesignHeight='480'>

        <StackPanel x:Name="LayoutRoot" Background="White">

            <Button x:Name="btnWalkTree" 
                Content="Walk Tree" 
                Click="btnWalkTree_Click"/>

            <Border CornerRadius="10" Background="Yellow">
                <TextBlock x:Name="tbName1"
                   Text="Santa Clause" 
                   HorizontalAlignment="Center"
                   VerticalAlignment="Center" 
                   Margin="3" />
            </Border>

            <Border CornerRadius="10" Background="AliceBlue">
                <TextBlock x:Name="tbName2"
                       Text="Mickey Mouse"
                       HorizontalAlignment="Center"
                       VerticalAlignment="Center"
                       Margin="3" />
            </Border>

            <Border CornerRadius="10" Background="Green">
                <TextBlock x:Name="tbName3"
                       Text="The Tooth Fairy"
                       HorizontalAlignment="Center"
                       VerticalAlignment="Center"
                       Margin="3" />
            </Border>
            
        </StackPanel>
    
</UserControl>


//File: Page.xaml.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;

namespace SilverlightApplication3
{
    public partial class MainPage : UserControl
    {
        public MainPage()
        {
            InitializeComponent();
        }

        private void btnWalkTree_Click(object sender, RoutedEventArgs e)
        {
            this.WalkChildren(this);
        }

        private void WalkChildren(DependencyObject depObject)
        {
            string name = String.Empty;
            FrameworkElement element = depObject as FrameworkElement;
            if (element != null)
            {
                name = element.Name;
            }

            int childCount = VisualTreeHelper.GetChildrenCount(element);
            if (childCount > 0)
            {
                for (int i = 0; i < childCount; i++)
                {
                    this.WalkChildren(VisualTreeHelper.GetChild(element, i));
                }
            }
        }
    }
}

   
    
    
    
  








Related examples in the same category

1.Setting the Cursor of a FrameworkElement at design timeSetting the Cursor of a FrameworkElement at design time