Haben Sie sich auch schon einmal darüber geärgert, dass sich einzelne Spalten im ListView-Control nicht so ohne weiteres aus- und bei Bedarf wieder einblenden lassen? Stimmt - eine Visible-Eigenschaft bietet das ColumnHeaders-Objekt nicht. Aber: Um eine Spalte zur Laufzeit auszublenden könnte man doch einfach die Width-Eigenschaft der Spalte auf 0 setzen - oder? Genau das macht die nachfolgende Prozedur. Und damit sich eine ausgeblendete Spalte schnell wieder in der ursprünglichen Größe wiederherstellen lässt, wird die Spaltenbreite einfach in der Tag-Eigenschaft der jeweiligen Spalte "zwischengespeichert". Parameter:
Kopieren Sie den Code am besten in ein Modul, so dass Sie auf die lvw_SetColumnView-Prozedur aus Ihrem gesamten Projekt heraus zugreifen können. Option Explicit ' Aufzählung Public Enum MODE_COLUMNVIEW lvw_ColumnHide = 0 lvw_ColumnShow = 1 End Enum ' Blendet eine Spalte eines ListView-Controls bzw. ' zeigt diese wieder in der ursprünglichen Größ an Public Sub lvw_SetColumnView(ListView As ListView, _ ByVal nIndex As Integer, _ ByVal nMode As MODE_COLUMNVIEW) With ListView.ColumnHeaders ' Wurde eine gültige Spalte angegeben? If nIndex > 0 And nIndex < .Count + 1 Then With .Item(nIndex) Select Case nMode ' Spalte ausblenden Case lvw_ColumnHide If .Width > 0 Then ' Aktuelle Spaltenbreite in der Tag- ' Eigenschaft "merken" .Tag = .Width ' Neue Spaltenbreite: Width = 0 .Width = 0 End If ' Spalte wieder einblenden Case lvw_ColumnShow If .Width = 0 Then ' Ursprüngliche Breite aus der Tag- ' Eigenschaft auslesen und als "neue alte" ' Width-Eigenschaft setzen .Width = Val(.Tag) End If End Select End With End If End With End Sub Beispiel für den Aufruf: ' 2. Spalte ausblenden lvw_SetColumnView ListView1, 2, lvw_ColumnHide ' 2. Spalte wieder einblenden lvw_SetColumnView ListView1, 2, lvw_ColumnShow Dieser Tipp wurde bereits 28.152 mal aufgerufen. Voriger Tipp | Zufälliger Tipp | Nächster Tipp
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
sevWizard für VB5/6 Professionelle Assistenten im Handumdrehen Erstellen Sie eigene Assistenten (Wizards) im Look & Feel von Windows 2000/XP - mit allem Komfort und zwar in Windeseile :-) Tipp des Monats April 2024 Skyfloy Chart von Microsoft und dazu noch gratis Tutorial für Microsoft Chart Controls für Microsoft .NET Framework 3.5 TOP Entwickler-Paket TOP-Preis!! Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1605.50 EUR... |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |