Popup.Child Property
Gets or sets the content to be hosted in the popup.
Namespace: System.Windows.Controls.Primitives
Assembly: System.Windows (in System.Windows.dll)
Dependency property identifier field: ChildProperty
The Child property can be any single UIElement. In order to host multiple items, create a UserControl or host the content in a container, such as StackPanel or Grid. A popup will always appear on top of existing content, including other popup controls.
Child is the XAML content property for Popup, so you do not need to specify a Popup.Child property element in the XAML syntax. For more information about XAML content property syntax, see XAML Overview.
The following example shows how to use a Popup to display a border that contains a text block and a button. The popup content is created inline for conciseness, but you would typically create this content in a separate user control and use an instance of that control as the child of the popup.
' Create the popup object. Private p As New Popup() Private Sub showPopup_Click(ByVal sender As Object, ByVal e As RoutedEventArgs) ' Create some content to show in the popup. Typically you would ' create a user control. Dim border As New Border() border.BorderBrush = New SolidColorBrush(Colors.Black) border.BorderThickness = New Thickness(5) Dim panel1 As New StackPanel() panel1.Background = New SolidColorBrush(Colors.LightGray) Dim button1 As New Button() button1.Content = "Close" button1.Margin = New Thickness(5) AddHandler button1.Click, AddressOf button1_Click Dim textblock1 As New TextBlock() textblock1.Text = "The popup control" textblock1.Margin = New Thickness(5) panel1.Children.Add(textblock1) panel1.Children.Add(button1) border.Child = panel1 ' Set the Child property of Popup to the border ' which contains a stackpanel, textblock and button. p.Child = border ' Set where the popup will show up on the screen. p.VerticalOffset = 25 p.HorizontalOffset = 25 ' Open the popup. p.IsOpen = True End Sub Private Sub button1_Click(ByVal sender As Object, _ ByVal e As RoutedEventArgs) ' Close the popup. p.IsOpen = False End Sub
<UserControl x:Class="Popup2.Page" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" FontFamily="Trebuchet MS" FontSize="11" Width="200" Height="200"> <StackPanel x:Name="LayoutRoot" Background="White"> <Button Width="100" Height="50" x:Name="showPopup" Click="showPopup_Click" Content="Show Popup" /> </StackPanel> </UserControl>
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.