Angeregt durch den Codeschnipsel CheckedListBox - alle Einträge auswählen / Auswahl umkehren und meinen bisherigen Copy & Paste von einem Projekt ins nächste, habe ich folgende 3 Methoden (neben vielen anderen) in eine DLL ausgelagert. Vielleicht nützt sie ja dem einen oder anderen. Die Benutzung der Methoden sind in den jeweiligen Kommentaren im Example-Tag erklärt. ''' <summary> ''' Alle Items einer CheckedListbox auf chkState setzen ''' <example>CheckListBoxSetCheckAll (me.CheckedListbox1, CheckState.Checked)</example> ''' oder ''' <example>CheckListBoxSetCheckAll (me.CheckedListbox1, CheckState.UnChecked)</example> ''' oder ''' <example>CheckListBoxSetCheckAll (me.CheckedListbox1, CheckState.Intermediate)</example> ''' </summary> ''' <param name="chkBox">System.Windows.Forms.CheckedListBox</param> ''' <param name="chkState">System.Windows.Forms.CheckState</param> ''' <remarks> ''' 02.07.2009 Lars Witter: Erstellt ''' 02.07.2009 Lars Witter: Erweitert als allgemein gültige Funktion ''' von http://www.vbarchiv.net/tipps/details.php?id=2031 ''' </remarks> Public Shared Sub CheckListBoxSetCheckAll(ByRef chkBox As CheckedListBox, _ ByVal chkState As CheckState) With chkBox .BeginUpdate() For i As Integer = 0 To .Items.Count - 1 .SetItemCheckState(i, chkState) Next .EndUpdate() End With End Sub ''' <summary> ''' Alle Items einer CheckedListbox mit angegebenem Checkstate auf neuen CheckState setzen ''' <example>CheckListBoxSetCheckFilter (me.CheckedListbox1, CheckState.Checked, ''' CheckState.UnChecked)</example> ''' oder ''' <example>CheckListBoxSetCheckFilter (me.CheckedListbox1, CheckState.UnChecked, ''' CheckState.Intermediate)</example> ''' oder ''' <example>CheckListBoxSetCheckFilter (me.CheckedListbox1, CheckState.Intermediate, ''' CheckState.Checked)</example> ''' </summary> ''' <param name="chkBox">System.Windows.Forms.CheckedListBox</param> ''' <param name="OldChkState">System.Windows.Forms.CheckState - CheckState nach dem gesucht wird</param> ''' <param name="NewChkState">System.Windows.Forms.CheckState - der neu zu setzende CheckState</param> ''' <remarks> ''' 02.07.2009 Lars Witter: Erstellt ''' 02.07.2009 Lars Witter: Erweitert als allgemein gültige Funktion ''' von http://www.vbarchiv.net/tipps/details.php?id=2031 ''' </remarks> Public Shared Sub CheckListBoxSetCheckFilter(ByRef chkBox As CheckedListBox, _ ByVal OldChkState As CheckState, ByVal NewChkState As CheckState) With chkBox .BeginUpdate() For i As Integer = 0 To .Items.Count - 1 If .GetItemCheckState(i) = OldChkState Then .SetItemCheckState(i, NewChkState) End If Next .EndUpdate() End With End Sub ''' <summary> ''' Alle (Checked)-Items.CheckState einer CheckedListbox Invertieren zu UnChecked ''' <example>CheckListBoxSetCheckInvert (me.CheckedListbox1)</example> ''' </summary> ''' <param name="chkBox">System.Windows.Forms.CheckedListBox</param> ''' <remarks> ''' 02.07.2009 Lars Witter: Erstellt ''' 02.07.2009 Lars Witter: Erweitert als allgemein gültige Funktion ''' von http://www.vbarchiv.net/tipps/details.php?id=2031 ''' </remarks> Public Shared Sub CheckListBoxSetCheckInvert(ByRef chkBox As CheckedListBox) With chkBox .BeginUpdate() For i As Integer = 0 To .Items.Count - 1 If .GetItemCheckState(i) = CheckState.Checked Then .SetItemCheckState(i, CheckState.Unchecked) Else .SetItemCheckState(i, CheckState.Checked) End If Next .EndUpdate() End With End Sub |