Remove Control from a Panel
<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="ElemCollMethods.Pane1"
WindowTitle="UI Element Collection Methods Sample">
<StackPanel>
<TextBlock Name="txt" FontSize="16">UI Element Collection - Methods</TextBlock>
<TabControl>
<TabItem MouseLeftButtonUp="RemoveButton">
<TabItem.Header>Remove Control</TabItem.Header>
</TabItem>
</TabControl>
<StackPanel Name="sp1"></StackPanel>
</StackPanel>
</Page>
//File:Window.xaml.vb
Imports System
Imports System.Windows
Imports System.Windows.Controls
Imports System.Windows.Documents
Imports System.Windows.Navigation
Imports System.Windows.Shapes
Imports System.Windows.Data
Imports System.Windows.Input
Namespace ElemCollMethods
Public Partial Class Pane1
Inherits Page
Private btn As System.Windows.Controls.Button, btn1 As System.Windows.Controls.Button, btn2 As System.Windows.Controls.Button, btn3 As System.Windows.Controls.Button
Private Sub RemoveButton(sender As Object, e As MouseButtonEventArgs)
sp1.Children.Clear()
btn = New Button()
btn.Content = "Click to insert button"
sp1.Children.Add(btn)
AddHandler btn.Click, (AddressOf InsertControls)
btn1 = New Button()
btn1.Content = "Click to insert button"
sp1.Children.Add(btn1)
AddHandler btn1.Click, (AddressOf InsertControls)
If (sp1.Children.IndexOf(btn) >= 0) OrElse (sp1.Children.IndexOf(btn1) >= 0) OrElse (sp1.Children.IndexOf(btn2) >= 0) OrElse (sp1.Children.IndexOf(btn3) >= 0) Then
sp1.Children.RemoveAt(0)
End If
End Sub
Private Sub InsertControls(sender As Object, e As RoutedEventArgs)
btn2 = New Button()
btn2.Content = "Inserted Button"
sp1.Children.Insert(1, btn2)
End Sub
End Class
End Namespace
Related examples in the same category