Mega Code Archive

 
Categories / VB.Net Tutorial / WPF
 

Use Linq to get checked CheckBox

<Window x: Class="WpfApplication1.Window1"     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"     Title="WPF" Height="250" Width="300">     <StackPanel Name="panel">         <CheckBox Checked="CheckBox_Checked" Content="First CheckBox"                    IsChecked="True" Margin="2" Name="checkbox1"                    />         <Button Content="Get Selected" Margin="5" MaxWidth="100"                  Click="Button_Click" />         <TextBlock FontWeight="Bold" Text="Selected CheckBoxes:" />         <ListBox Margin="5" MinHeight="2cm" Name="listbox" />     </StackPanel> </Window> //File:Window.xaml.vb Imports System.Linq Imports System.Windows Imports System.Windows.Controls Namespace WpfApplication1   Public Partial Class Window1     Inherits Window     Public Sub New()       InitializeComponent()     End Sub     Private Sub Button_Click(sender As Object, e As RoutedEventArgs)       listbox.Items.Clear()       For Each checkbox As CheckBox In panel.Children.OfType(Of CheckBox)().Where(Function(cb) cb.IsChecked = True)         listbox.Items.Add(checkbox.Name)       Next     End Sub     Private Sub CheckBox_Checked(sender As Object, e As RoutedEventArgs)       If Not IsInitialized Then         Return       End If       Dim checkbox As CheckBox = TryCast(e.OriginalSource, CheckBox)       If checkbox IsNot Nothing Then         MessageBox.Show(checkbox.Name & " is checked.", Title)       End If     End Sub   End Class End Namespace