2009-07-11 1 views
0

Thats это на самом деле ..Пароль Персонаж не работает на System.Windows.Forms.TextBox

Я использую VS2008 Express.

Все образцы говорят только, чтобы установить PasswordChar, но ничего не замаскировано.

Я также попытался установить «UseSystemPasswordChar» = истинный .. не повезло ..

// Set to no text. 
    textBox1.Text = ""; 
    // The password character is an asterisk. 
    textBox1.PasswordChar = '*'; 
    // The control will allow no more than 14 characters. 
    textBox1.MaxLength = 14; 

Причины я использую TextBox, потому что я хочу, чтобы пользователь мог попасть возвращения, и он утверждает, данные. Важно отметить, что я предполагаю, что у меня есть MultiLine = true, чтобы я мог захватить возвращение.

Кажется, я не могу захватить возврат с помощью maskedTextBox. Все, что я получаю, это системный сигнал.

Решение любого из них подходит для меня!

ответ

8

Если вы читали the documentation это говорит: «Если свойство Multiline установлено значение истинно, установив свойство PasswordChar не имеет никакого визуального эффекта.»

+2

Вам также может быть интересно, что вы можете отправить на Enter с помощью кнопки с свойством AcceptButton в форме, установленной на эту кнопку: http://msdn.microsoft.com/en-us/library/system.windows.forms.form.acceptbutton(VS.80).aspx –

+0

да, это очень полезно. Благодаря! – KevinDeus

-1

При использовании MaskedTextBox захватить нажатие клавиши и сделать что-то вроде:

if (e.KeyChar == 13) { 
    /* This is the enter key. Do stuff. */ 
} 
+1

Я мог бы сделать это, то есть .. если maskedtextbox допустил бы жесткие возвращения .. – KevinDeus

2

UseSystemPasswordChar не работает, если для параметра Multiline установлено значение true. Стандартный текстовый ящик Windows Forms допускает возврат, даже если Multiline = false.

Решение: Установите Multiline = False и установите кнопку в своей форме, чтобы использовать свойство AcceptButton, или захватите клавишу return/enter в событии «KeyPress» текстового поля.