Get all children from a Panel : DockPanel « Windows Presentation Foundation « VB.Net






Get all children from a Panel

Get all children from a Panel
    
<StackPanel Name="root"
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  x:Class="WpfApplication1.DPClearValue">
    <StackPanel.Resources>
      <Style TargetType="Button">
        <Setter Property="Height" Value="20"/>
        <Setter Property="Width" Value="250"/>
        <Setter Property="HorizontalAlignment" Value="Left"/>
      </Style>
      <Style TargetType="Ellipse">
        <Setter Property="Height" Value="50"/>
        <Setter Property="Width" Value="50"/>
        <Setter Property="Fill" Value="Black"/>
      </Style>
      <Style TargetType="Rectangle">
        <Setter Property="Height" Value="50"/>
        <Setter Property="Width" Value="50"/>
        <Setter Property="Fill" Value="Blue"/>
      </Style>
      <Style TargetType="Polygon">
        <Setter Property="Points" Value="10,60 60,60 60,10"/>
        <Setter Property="Fill" Value="Blue"/>
      </Style>
      <Style x:Key="ShapeStyle" TargetType="Shape">
        <Setter Property="Fill" Value="Red"/>
      </Style>
    </StackPanel.Resources>
  <DockPanel Name="myDockPanel">
    <Ellipse Height="100"  Width="100" Style="{StaticResource ShapeStyle}"/>
    <Rectangle Height="100" Width="100"  Style="{StaticResource ShapeStyle}" />
    <Polygon Points="10,110 110,110 110,10" Style="{StaticResource ShapeStyle}"/>
  </DockPanel>
    <Button Name="RedButton" Click="MakeEverythingRed">Make everything red</Button>
    <Button Name="ClearButton" Click="RestoreDefaultProperties">
  Clear local values
  </Button>

</StackPanel>

//File:Window.xaml.vb


Imports System.Windows
Imports System.Collections
Imports System.Windows.Media
Imports System.Windows.Controls
Imports System.Windows.Shapes

Namespace WpfApplication1
  Public Partial Class DPClearValue

    Private Sub RestoreDefaultProperties(sender As Object, e As RoutedEventArgs)
      Dim uic As UIElementCollection = myDockPanel.Children
      For Each uie As Shape In uic
        Dim locallySetProperties As LocalValueEnumerator = uie.GetLocalValueEnumerator()
        While locallySetProperties.MoveNext()
          Dim propertyToClear As DependencyProperty = DirectCast(locallySetProperties.Current.[Property], DependencyProperty)
          If Not propertyToClear.[ReadOnly] Then
            uie.ClearValue(propertyToClear)
          End If
        End While
      Next
    End Sub
    Private Sub MakeEverythingRed(sender As Object, e As RoutedEventArgs)
      Dim uic As UIElementCollection = myDockPanel.Children
      For Each uie As Shape In uic
        uie.Fill = New SolidColorBrush(Colors.Red)
      Next
    End Sub
  End Class
End Namespace

   
    
    
    
  








Related examples in the same category

1.Using DockPanel.Dock to position elementsUsing DockPanel.Dock to position elements
2.Use DockPanel to layout a WindowUse DockPanel to layout a Window
3.Nested DockPanelNested DockPanel
4.Fill DockPanel with Labels and ButtonsFill DockPanel with Labels and Buttons
5.Window with DockLayoutWindow with DockLayout
6.Dock UI Elements to the Edges of a FormDock UI Elements to the Edges of a Form
7.Put a StackPanel on the LeftPut a StackPanel on the Left
8.Set Dock position for DockPanel layoutSet Dock position for DockPanel layout
9.Differences of StackPanel and DockPanelDifferences of StackPanel and DockPanel
10.Insert to a Panel by indexInsert to a Panel by index
11.Find the index number of a newly added element within a panel, using the IndexOf methodFind the index number of a newly added element within a panel, using the IndexOf method
12.Show the effect of each value of the Dock property by manipulating two Rectangle elements.Show the effect of each value of the Dock property by manipulating two Rectangle elements.