2014-10-27 3 views
0

Моя проблема:

Когда достигнуто мое текстовое поле MaxLength, раздастся звуковой сигнал. Я хочу предотвратить этот сигнал и даже зайти так далеко, чтобы предотвратить все случаи подачи звукового сигнала для моего приложения, если это возможно.Как предотвратить звуковой сигнал MaxLength или вообще запретить запуск приложения?

Я уже знаком с тем, как имитировать MaxLength с помощью Substring и сброса каретки, но в данном конкретном случае, подставляя MaxLength не вариант.

Для воспроизведения:

  1. В Visual Studio в режиме разработки, перетащите текстовое поле на свежем виде.
  2. Используйте следующие как:

Код:

Public Class Form1 
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load 
     TextBox1.MaxLength = 5 
    End Sub 
    Private Sub TextBox1_keypress(keyascii As Integer) 
     If len(TextBox1.text) = 5 Then 
      keyascii = 0 
     End If 
    End Sub 
End Class 

выше является адаптацией примеров я столкнулся в Интернете, но не имеет никакого эффекта.

ответ

1

Испытание это:

Private Sub TextBox1_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress 
    If Not e.KeyChar.Equals(ControlChars.Back) Then 
     If Me.TextBox1.TextLength = Me.TextBox1.MaxLength Then 
      e.Handled = True 
     End If 
    End If 
End Sub 
+0

испытано. Я могу подтвердить, что он работает на моем конце. Большое спасибо. Я изо всех сил пытался найти рабочее решение в Интернете. –

Смежные вопросы