Popup.Child Property
Microsoft Silverlight will reach end of support after October 2021. Learn more.
Gets or sets the content to be hosted in the popup.
Namespace: System.Windows.Controls.Primitives
Assembly: System.Windows (in System.Windows.dll)
Syntax
'Declaration
Public Property Child As UIElement
public UIElement Child { get; set; }
<Popup ...>
singleChild
</Popup>
XAML Values
- singleChild
A single object element that the popup displays as content. This child must be an object that derives from UIElement.
Property Value
Type: System.Windows.UIElement
The content to be hosted in the popup.
Remarks
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.
Examples
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
// Create the popup object.
Popup p = new Popup();
private void showPopup_Click(object sender, RoutedEventArgs e)
{
// Create some content to show in the popup. Typically you would
// create a user control.
Border border = new Border();
border.BorderBrush = new SolidColorBrush(Colors.Black);
border.BorderThickness = new Thickness(5.0);
StackPanel panel1 = new StackPanel();
panel1.Background = new SolidColorBrush(Colors.LightGray);
Button button1 = new Button();
button1.Content = "Close";
button1.Margin = new Thickness(5.0);
button1.Click += new RoutedEventHandler(button1_Click);
TextBlock textblock1 = new TextBlock();
textblock1.Text = "The popup control";
textblock1.Margin = new Thickness(5.0);
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;
}
void button1_Click(object sender, RoutedEventArgs e)
{
// Close the popup.
p.IsOpen = false;
}
<UserControl x:Class="Popup2.Page"
xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="https://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>
Version Information
Silverlight
Supported in: 5, 4, 3
Silverlight for Windows Phone
Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0
Platforms
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.