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:
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: