Probleme mit ScrollToCaret bei ShowDialog()

  • VB.NET

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

    Probleme mit ScrollToCaret bei ShowDialog()

    Ich habe eine Form mit einer Textbox und mehreren Buttons.

    Wenn ich den Text mit Form2.Show() auf den Bildschirm bringe, scrollt der Text wie gewünscht bis zur untersten Zeile. Ich will aber nicht Show() verwenden, sondern ShowDialog().
    Mit ShowDialog() beginnt das Textfeld mit der ersten Zeile, es wird nicht bis ganz unten gescrollt.


    So klappt es:

    VB.NET-Quellcode

    1. For i = 0 To 99
    2. Form2.TextBox1.Text = Form2.TextBox1.Text & i & vbCrLf
    3. Next
    4. Form2.TextBox1.Select(Form2.TextBox1.Text.Length, 0)
    5. Form2.TextBox1.Select()
    6. Form2.TextBox1.ScrollToCaret() '
    7. Form2.Show()
    8. Form2.TextBox1.ScrollToCaret()


    Wie kann ich bei ShowDialog ähnlich wie mit ScrollToCaret mein Ziel erreichen?

    CodeTags gesetzt ~VaporiZed

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „VaporiZed“ ()

    Willkommen im Forum.

    Bevor Du weitermachst, bitte die empfohlenen VS-Einstellungen verwenden. Stichwort vbCrLf

    Warum »Form1.Show« und Co. einem irgendwann ins Bein schießen

    Warum setzt Du die Position nicht innerhalb des Form2_Shown-EventHandlers? Dann würde es klappen.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    Jo danke, mit dem Me.Shown Event-Handler für Form2 scheint es zu funktionieren.
    Bin halt noch Anfänger in VB.

    VB.NET-Quellcode

    1. Private Sub Form2_Opened(sender As Object, e As EventArgs) Handles Me.Shown
    2. TextBox1.Select(TextBox1.Text.Length, 0)
    3. TextBox1.Select()
    4. TextBox1.ScrollToCaret()
    5. End Sub


    CodeTags gesetzt ~VaporiZed

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „VaporiZed“ ()