2011-05-23 2 views
1

У меня небольшая проблема - в моей программе Windows Forms у меня много текстовых полей. Они могут получать только числовые значения в диапазоне от 1 до 1024. «Защита» формы текстового поля не числовые входы не проблема. Но как я могу заверить, что значение не превышает 1024? Есть ли какая-либо функция или какое-либо событие, которое я мог бы попытаться поймать, а затем обработать его самостоятельно? Я подумал о том, чтобы поймать событие «TextChanged», а затем проверить его значение. Но как я могу узнать, какая кнопка была последней нажата? Кроме того, я бы не хотел обменивать свои текстовые поля с любыми другими элементами управления, поскольку они все реализованы прямо сейчас, и было бы очень полезно обменять их все. С наилучшими пожеланиямиTextBox max/min числовое значение

Quendras

+0

Have вы проверили, не добавляется ли числовой текст через Paste - я видел, что вы заметили несколько «числовых» текстовых полей до. – stuartd

ответ

2

Вы должны использовать контроль NumericUpDown и установите Maximum свойство.

1

Вы можете попробовать использовать OnLostFocus на каждом текстовом поле. Затем проверьте вход был цифровой, и это значение больше/равна 0, и меньше/равно 1024.

1

Вы можете проверить, когда это текстовое поле теряет фокус, а затем проверить его значение:

public sub Textbox1_lostFocus() handles textbox1.onLostFocus 

    If cint(textbox1.text) > 1024 then 
    'whatever you need to do here 
    End if 

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