MaxLength-Eigenschaft für Visual Basic 6.0-Benutzer
Aktualisiert: November 2007
In Visual Basic 6.0 steuert die MaxLength-Eigenschaft eines TextBox-Steuerelements bindend die Länge einer Zeichenfolge, die im Textfeld eingegeben oder angezeigt werden kann. Obwohl eine längere Zeichenfolge programmgesteuert eingegeben werden kann, wird sie automatisch auf die Länge gekürzt, die in der MaxLength-Eigenschaft festgelegt ist.
In Visual Basic 2008 überschreibt die Länge einer programmgesteuert eingegebenen Zeichenfolge die Einstellung der MaxLength-Eigenschaft.
Der folgende Code-Ausschnitt verdeutlicht das unterschiedliche Verhalten:
' Visual Basic 6.0
Text1.MaxLength = 5
Text1.Text = "Longer than five"
MsgBox Text1.Text ' Displays "Longe".
' Visual Basic
Text1.MaxLength = 5
Text1.Text = "Longer than five"
MsgBox(Text1.Text) ' Displays "Longer than five".
Die nächsten Schritte
Überprüfen Sie den Entwurf der Anwendung, um festzustellen, ob das gewünschte Verhalten darin bestand, den Text im Textfeld immer auf die Länge zu beschränken, die in der MaxLength-Eigenschaft festgelegt wurde.
Wenn dies das gewünschte Verhalten war, suchen Sie alle Codevorkommen, in denen die Text-Eigenschaft festgelegt wird, und fügen Sie Code ähnlich dem im folgenden Beispiel hinzu, um die Zeichenfolge zu kürzen.
' Old code Text1.Text = SomeString ' Replacement code If Len(SomeString) > Text1.MaxLength Then SomeString = Microsoft.VisualBasic.Left(SomeString, Text1.MaxLength) End If Text1.Text = SomeString
Wenn dies nicht das gewünschte Verhalten war, lassen Sie den Code unverändert. Die Benutzereingabe ist immer noch durch die MaxLength-Eigenschaft beschränkt, Sie können Zeichenfolgen, die länger sind als die MaxLength-Einstellung, jedoch programmgesteuert zuweisen.