Seltsames Verhalten bei Key events

n8mensch

Grünschnabel
Hallo zusammen,

ich bin C# Anfänger (habe aber erfarungen in anderen Programmiersprachen) und muss nun eine Windows Anwendung in C# entwickeln. Bisher komme ich eigentlich recht gut zurecht, habe aber trotzdem noch das Problem das sich manche Controlls nicht wie erwartet verhalten. So habe ich zum Beispiel einen Textbox die immer wenn ich "Return" drücke einen Systemsound anstößt. Sonst funktioniert alles, aber irgendwie find' ich das sehr nervig.

Code:
        private void txtURL_KeyUp(object sender, KeyEventArgs e)
        {
            string test = ".";

            if (e.KeyCode == Keys.Enter)
            {
                textbox2.AppendText(test);
            }
        }

Bei dem Oberen Beispiel wird jedesmal beim Enter drücken auch ein Punkt in eine andere textbox geschrieben. Nur leider wird auch immer ein Betriebssystemsound ausgegeben.

Kann mir wer helfen? Bin ich zu doof ?

gruß
n8mensch
 
Du fängst das falsche Ereignis ab. Probier mal folgendes:

C#:
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
    if (e.KeyChar == 13)
    {
        textBox1.AppendText(".");
    }
    e.Handled = true;
}
Wichtig ist an dieser Stelle auch das Setzen der Eigenschaft Handled.
 
Danke klappt!

Wann benutzt mann denn key up/down und wann das press event? Wo kann ich sowas nachlesen, damit ich euch hier nicht auf den Zeiger gehe :suspekt: :)

g
n8m
 
In der MSDN :)

Aber wir freuen uns auch über viele Fragen :)

Ein kurzer Blick in die EventArgs zeigt die unterschiede der beiden Events ganz gut.
 
Zurück