Das TreeView-Control verfügt bekanntlich über eine autom. Editier-Funktion, mit der sich der Inhalt eines Node-Objektes zur Laufzeit editieren lässt. Leider gibt es aber keine Eigenschaft, mit der sich die Eingabelänge auf eine maximal zulässige Anzahl von Zeichen begrenzen lässt. Mit ein bisschen API lässt sich das aber wie folgt realisieren. Option Explicit ' API-Deklarationen Private Declare Auto Function SendMessage Lib "user32" ( _ ByVal hWnd As IntPtr, _ ByVal wMsg As Int32, _ ByVal wParam As Int32, _ ByVal lParam As Int32) As Int32 Private Const TV_FIRST = &H1100 Private Const TVM_GETEDITCONTROL = TV_FIRST + 15 Private Const EM_LIMITTEXT = &HC5 Private Sub TreeView1_BeforeLabelEdit(ByVal sender As Object, _ ByVal e As System.Windows.Forms.NodeLabelEditEventArgs) _ Handles TreeView1.BeforeLabelEdit ' Handle der Eingabebox ermitteln Dim hWnd As IntPtr = _ SendMessage(TreeView1.Handle.ToInt32, TVM_GETEDITCONTROL, 0, 0) If hWnd <> 0 Then ' maximale Eingabelänge bspw. auf 10 Zeichen festlegen SendMessage(hWnd, EM_LIMITTEXT, 10, 0) End If End Sub Dieser Tipp wurde bereits 11.022 mal aufgerufen.
Anzeige
![]() ![]() ![]() (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. |
vb@rchiv CD Vol.6 ![]() ![]() Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! Online-Update-Funktion Entwickler-Vollversionen u.v.m. Tipp des Monats Neu! sevDTA 3.0 Pro ![]() SEPA mit Kontonummernprüfung Erstellen von SEPA-Dateien mit integriertem BIC-Verzeichnis und Konto- nummern-Prüfverfahren, so dass ungültige Bankdaten bereits im Vorfeld ermittelt werden können. |
||||||||||||||||
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. |