TabControl in TabControl -> Form ruckelt + höhere CPU-Auslastung

  • VB.NET
  • .NET (FX) 4.0

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    TabControl in TabControl -> Form ruckelt + höhere CPU-Auslastung

    Abend,

    ich habe ein kleines Problem, welches zwei TabControls einschließt. Eines der Controls ist ein selbst erstelltes und ohne Reiter (code unten). Das zweite ist eines aus der Toolbox.

    Eine Page des Reiterlosen-Controls beinhaltet ein weiteres TabControl. Sobald ich die Seite mit dem zweiten Control via Button sichtbar mache, fängt die Anwendung total an zu ruckeln und die CPU-Auslastung steigt von unter 1% auf gute 20%. Wenn ich eine andere Seite öffne ist alles wieder normal. Es liegt also nur an dieser Seite welche das zweite Control beinhaltet (Visible = False behebt das Problem, ist aber keine Lösung).

    Jetzt meine Frage: Woher kommt die plötzliche Auslastung + Ruckeln ? Und wie kann ich das Problem beheben ?

    TablessTabControl

    VB.NET-Quellcode

    1. Class TablessTabControl : Inherits TabControl
    2. Private Const TCM_ADJUSTRECT As Integer = &H1328
    3. Protected Overrides Sub WndProc(ByRef m As Message)
    4. If m.Msg = TCM_ADJUSTRECT Then
    5. m.Result = CType(1, IntPtr)
    6. Return
    7. End If
    8. MyBase.WndProc(m)
    9. End Sub
    10. End Class​

    Bild
    ​Designer:
    Rot: "TablessTabControl"-Page
    Blau: Zweites TabControl


    Grüße

    BradApfel schrieb:

    wie kann ich das Problem beheben ?
    Lass die WndProc weg.
    Gugst Du TabControl ohne Reiter.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!