Рейтинг:
1
Graeme_Grant
Вам нужно проверить ключ до того, как текст будет изменен, и отменить/подавить, если он недействителен.
Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
Dim a As Double
a = TextBox1.Text
TextBox1.Text = Format(a, "#,###")
TextBox1.SelectionStart = Len(TextBox1.Text)
TextBox2.Text = TextBox1.Text
End Sub
Private Sub TextBox1_KeyDown(sender As Object, e As KeyEventArgs) Handles TextBox1.KeyDown
If e.KeyCode < Keys.D0 Or e.KeyCode > Keys.D9 Then
e.SuppressKeyPress = True
End If
End Sub
Обновление: Если вы также хотите разрешить редактирование ключей, вот обновленная версия события KeyDown.
Private validKeys() As Integer =
{
Keys.Delete,
Keys.Back,
Keys.Clear,
Keys.Home,
Keys.Left,
Keys.Right,
Keys.End,
Keys.D0,
Keys.D1,
Keys.D2,
Keys.D3,
Keys.D4,
Keys.D5,
Keys.D6,
Keys.D7,
Keys.D8,
Keys.D9
}
Private Sub TextBox1_KeyDown(sender As Object, e As KeyEventArgs) Handles TextBox1.KeyDown
If Not validKeys.Contains(e.KeyCode) Then
e.SuppressKeyPress = True
End If
End Sub
Khabibb Mubarakk
все еще не ясно на textbox2
Graeme_Grant
вот почему:
Текстовое поле textbox1.Объект Selectionstart = Лен(Текстовое Поле Textbox1.Текст) ' ничего не делает
TextBox2. Text = TextBox1 . Text ' зеркала TextBox1
Если вы хотите очистить TextBox2 если TextBox1 изменился то:
Если Len(TextBox1. Text) > 0, то
Поле textbox2.Текст = ""
Конец, Если
Khabibb Mubarakk
я пытаюсь, но когда я печатаю на tb1, то на tb2 просто пусто..
Graeme_Grant
Я привел пример ... Вам нужно изменить мой пример на то, что вам нужно:
Если Len(TextBox1. Text) > 0, то
"если условие выполнено, установите TextBox2. Text на то, что требуется...
Конец, Если
Или измените тест на то условие, которое вы хотите ... Это упражнение я оставил для вас. ;)
Khabibb Mubarakk
вы знаете, если я использую это
Если Поле Textbox2.Текст = "" Или Нет Статистика(Поле Textbox2.Текст) Затем
Выход Из Субмарины
Конец, Если
б = поле textbox2.Текст
TextBox2. Text = формат (b, "#,###")
Поле textbox2.Объект Selectionstart = Лен(Поле Textbox2.Текст)
TextBox4.Текст = Поле Textbox2.Текст
Если Len(TextBox2. Text) = 0, То
TextBox4.Текст = ""
Конец, Если
неужели ничего не происходит же не может проясниться
но если я использую это
Если Удвоить.Метод Tryparse(Textbox1 Элемент.Текста, в) то
TextBox1. Text = Format (a, "#,###")
Текстовое поле textbox1.Объект Selectionstart = Лен(Текстовое Поле Textbox1.Текст)
TextBox6.Текст = Элемент Textbox1.Текст
Конец, Если
Если Len(TextBox1. Text) = 0, То
TextBox6.Текст = ""
Конец, Если
эта работа ..
ты можешь мне объяснить