2009-03-13 9 views
5

Wie verhindere ich, dass der Cursor in die nächste Zeile in einem Textfeld springt, wenn die 'ENTER'-Taste gedrückt wurde? Mit anderen Worten: Wie kann man die Taste "ENTER" oder "RETURN" in einer Textbox deaktivieren?C# Wie deaktiviere ich einen Schlüssel?

Antwort

13

Sie können das Ereignis OnKeyDown schreiben. Sie können die e.SuppressKeyPress verwenden, um .NET mitzuteilen, dass Sie den Schlüssel behandeln. Etwas wie dieses:

if (e.KeyCode == Keys.Enter) { 
    e.SuppressKeyPress = true; 
} 
+0

+1 für nützliche Informationen für den allgemeinen Fall, auch wenn es nicht der beste Ansatz für dieses spezielle Szenario ist – Davy8

+0

WOW schnelle Antwort ... das ist viel besser als andere Foren (will nicht sagen, welche) wo Menschen beleidigen Leute, die Fragen stellen. Danke, danke. –

+0

KeyPressEventArgs enthält nicht SuppressKeyPress ... Ich verwende OnKeyPress Ereignis –

6

Werfen Sie einen Blick auf TextBox.AcceptsReturn.

+0

gibt es eine Möglichkeit, dies auf einer Richtextbox zu tun? –

+0

Ich fürchte nicht. Aber Sie können OnKeyDown überschreiben, wie Jedi Master Spooky vorschlägt. –

Verwandte Themen