In einigem VB6-Code, habe ich einen Handler für eine kürzere Veranstaltung TreeView:Verhindern, dass eine TreeView Ereignisse in VB6 auslöst?
Private Sub MyTree_Collapse(ByVal Node as MSComCtlLib.Node)
Dies wird aufgerufen, wenn ein Knoten im Baum kollabiert ist, ob durch den Benutzer oder programmatisch. Wie sich herausstellt, kann es passieren, dass dieser Handler bei einer Umgehungsoperation einen Knoten zum Kollaps bringt, was zu einer unendlichen Rekursion führt.
Ich kann mir mehrere Möglichkeiten vorstellen, diese Katze zu häuten, aber was mir am einfachsten erscheint, ist, der TreeView zu sagen, dass sie für eine gewisse Zeit keine Ereignisse auslösen soll. Ich kann jedoch keinen einfachen Anruf finden, um mich das tun zu lassen. Hat jemand dies erfolgreich getan, oder muss ich den Status auf eine andere Art und Weise überwachen, damit ich angemessen reagieren kann, wenn rekursive Ereignisse auftreten?
Ist eine statische Variablen in VB in allen Instanzen einer Klasse wie in C++ gemeinsam? Ich ging mit Member-Daten (nicht globale Daten), so dass die Einstellung der Flagge nicht Auswirkungen auf alle Instanzen meiner Klasse - nur die, die mir wichtig war. –