Autor Beitrag
stugi82
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 33



BeitragVerfasst: So 06.07.08 11:45 
Hallo,

ich habe in meinem Form eine TextBox, eineListbox und einen Hinzufügen-Button, mit dem ich die Elemente, die ich in die TextBox eingegeben habe der ListBox hinzufügen kann. Ich möchte nun erreichen, dass dies auch geschieht, wenn ich nach dem Eingeben eines Strings in die TextBox die Return-Taste betätige. Dazu enthält mein Form folgenden Code. Das Problem ist, dass beim Betätigen der Return-Taste der String aus der TextBox der ListBox nicht nur einmal hinzugefügt wird, sondern je nach dem wie lange ich die Return-Taste gedrückt halte, auch mehr mals. Wie kann ich das unterbinden?

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
        private void textBox_TextChanged(object sender, EventArgs e)
        {
            this.textBox.KeyDown += new KeyEventHandler(this.onEnterPressed);
        }

        private void onEnterPressed(object sender, KeyEventArgs e)
        {
            if (e.KeyData == Keys.Return)
            {
                addButton.PerformClick();
                e.Handled = true;
            }
        }

        private void addButton_Click(object sender, EventArgs e)
        {
            listBoxForFunctionNames.Items.Add(textBox.Text);
        }


Moderiert von user profile iconChristian S.: C#-Tags hinzugefügt
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: So 06.07.08 11:54 
Ich würde die TextBox nach dem Hinzufügen leeren und vorm Hinzufügen prüfen, ob ein leerer String hinzugefügt wird.

Wieso weist Du das onEnterPresser-Ereignis bei jeder Änderung des Textes neu zu? Wieso richtet Du es nicht einfach einmalig im Formdesigner ein?

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
stugi82 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 33



BeitragVerfasst: So 06.07.08 19:47 
Ja, das ist natürlich eine Möglichkeit. Danke! Dachte vielleicht gibt es auch eine "entprellte" Variante eines Key-Events.

Das onEnterPresser-Ereignis gehört da natürlich nicht hin. Das war nur zu Testen.