Bei MouseHover Events automatisch den TextBox Namen ermitteln?

  • VB.NET

Es gibt 12 Antworten in diesem Thema. Der letzte Beitrag () ist von MemoAnMichSelbst.

    Bei MouseHover Events automatisch den TextBox Namen ermitteln?

    Moin :)

    Folgendes, ich möchte, dass wenn ich über meine Textboxen fahre, dass sich die textbox in Multiline ändert und dann per new Size vergrößen, funktioniert mit:

    VB.NET-Quellcode

    1. Private Sub TextBox1_MouseHover(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.MouseHover
    2. TextBox1.Multiline = True
    3. TextBox1.Size = New Size(100, 100)
    4. End Sub
    5. Private Sub TextBox1_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.MouseLeave
    6. TextBox1.Multiline = False
    7. TextBox1.Size = New Size(100, 20)
    8. End Sub


    Super.

    Jetzt habe ich jedoch mehrere Textboxen mit verschiedenen Namen auf meiner Form, möchte aber nicht für jede Textbox ein eigenes Mousehover/Leave Event schreiben.
    Gibts eine Möglichkeit bei

    VB.NET-Quellcode

    1. TextBox1.Multiline = False
    2. TextBox1.Size = New Size(100, 20)


    das "TextBox1" generisch zu ermitteln (bsp. ich fahre mit der Maus über Textbox 11, das erkennt er, denn unter "Handles ist TextBox11.MouseHover" aufgeührt, in dem Code wird TextBox1.Size/Multiline mit entsprechendem TextBox11 geschrieben?

    Damit würde ich mir ja einige Zeilen Code und Mühe sparen? :)
    Danke!

    Grüße,
    Kevin
    Dafür gibt es "sender".

    Für Mousleave gilt das gleiche.

    VB.NET-Quellcode

    1. Private Sub TextBox5_MouseHover(sender As System.Object, e As System.EventArgs) Handles TextBox5.MouseHover, TextBox4.MouseHover, TextBox3.MouseHover, TextBox2.MouseHover, TextBox1.MouseHover, MyBase.MouseHover
    2. Dim send As TextBox = TryCast(sender, TextBox)
    3. send.Multiline = True
    4. send.Size = New Size(100, 100)
    5. End Sub

    There is no CLOUD - just other people's computers

    Q: Why do JAVA developers wear glasses?
    A: Because they can't C#

    Daily prayer:
    "Dear Lord, grand me the strength not to kill any stupid people today and please grant me the ability to punch them in the face over standard TCP/IP."

    VB.NET-Quellcode

    1. Private Sub TextBoxes_MouseHover(sender As Object, e As EventArgs) Handles TextBox1.MouseHover, TextBox2.MouseHover, TextBox3.MouseHover
    2. sender.Multiline = True
    3. sender.Size = New Size(100, 100)
    4. End Sub
    5. Private Sub TextBox1_MouseLeave(sender As Object, e As EventArgs) Handles TextBox1.MouseLeave, TextBox2.MouseLeave, TextBox3.MouseLeave
    6. sender.Multiline = False
    7. sender.Size = New Size(100, 20)
    8. End Sub

    Hier könnte meine Signatur stehen.
    @mox

    Bitte keine Strict off wenn die Strict on lösung schon da ist.
    There is no CLOUD - just other people's computers

    Q: Why do JAVA developers wear glasses?
    A: Because they can't C#

    Daily prayer:
    "Dear Lord, grand me the strength not to kill any stupid people today and please grant me the ability to punch them in the face over standard TCP/IP."
    Klappt Astrein Danke dir :)

    Aber eine Frage noch: Jetzt klappt das super, das problem ist, wenn jetzt mehrere SingleLine Textfelder unterinander sind, die so auch super aussehen, wenn ich jetzt aber bsp. über die oberste Textbox fahre, wird sie größer, alles perfekt, jedoch ist die vergrößtere Textbox nicht VOR den unteren Textboxen :(
    Wie bringe ich die, nachdem sie vergrößert ist, in den Vordergrund?
    Danke!

    Grüße,
    Kevin
    @Viercnt Setz deine Textboxen in ein FlowLayoutPanel
    There is no CLOUD - just other people's computers

    Q: Why do JAVA developers wear glasses?
    A: Because they can't C#

    Daily prayer:
    "Dear Lord, grand me the strength not to kill any stupid people today and please grant me the ability to punch them in the face over standard TCP/IP."
    @mox wieso bitte frickeln wenn es ein fertiges und funktionales Control dafür gibt?
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D
    Wenn du mal Langeweile hast, befass dich doch mal mit skalierbaren Designs. Die sind weit benutzerfreundicher und in VS dank der Splitter und Panel-Technologie sehr einfach zu gestalten.
    Ich baue meine Cockpits immer so, dass der Anwender selber die Daten zusammenschieben kann wie es für ihn mit seiner Auflösung und seiner eventuellen Sehschwäche ;) am angenehmsten ist.
    Zumal kann man dann auch nicht benötigte Panels einfach ausblenden und hat so mehr Platz für die Darstellung des "Rests".
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D