Mega Code Archive

 
Categories / VB.Net Tutorial / WPF
 

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