Dynamische Erzeugen von Textboxen

PACoSys

Grünschnabel
Hallo,

ich habe folgendes Problem. Ich möchte, daß wenn in einer Textbox ENTER gedrückt wird, soll eine neue Textbox auf dem gleichen Control erzeugt werden. So weit, so gut. Außerdem soll diese Textbox wieder die gleiche Funktionalität besitzen. So daß ich durch Betätigung der ENTER-Taste in der jeweils neuesten Textbox eine neue Textbox erzeugen kann, und dies sooft ich möchte wiederholen kann. Ich habe mir auch schon etwas überlegt. Mit einer eigenen neuen Textboxklasse, aber irgendwie funktioniert das nicht. Ich poste hier mal noch die Klasse.

Die Klasse:
Code:
Public Class clsMyTextbox
    ' erben von System.Windows.Forms.TextBox
    Inherits System.Windows.Forms.TextBox

#Region "Propertys"
    Private varIndex As Integer ' Index der Textbox
    Public Property Index() As Integer
        Get
            Return varIndex
        End Get
        Set(ByVal value As Integer)
            varIndex = value
        End Set
    End Property
#End Region

#Region "MyCode"
    Public Function instanziiereTextbox(ByVal sender As Object, _
        ByVal index As Integer, ByVal posX As Integer, ByVal posY As Integer)
        Dim myTextbox As New clsMyTextbox
        myTextbox.Index = index + 1
        myTextbox.Left = posX
        myTextbox.Top = posY + myTextbox.Height
        sender.Controls.Add(myTextbox)
    End Function
#End Region

    Private Sub clsMyTextbox_KeyPress(ByVal sender As Object, _
        ByVal e As System.Windows.Forms.KeyPressEventArgs) _
        Handles MyBase.KeyPress
        If e.KeyChar = Microsoft.VisualBasic.ChrW(13) Then
            Dim myTextbox As New clsMyTextbox
            myTextbox.instanziiereTextbox(myTextbox.Parent, _
               myTextbox.Index, myTextbox.Left, myTextbox.Top)
            e.Handled = True
        End If
    End Sub

End Class
 
Zuletzt bearbeitet von einem Moderator:

Neue Beiträge

Zurück