Остановите «Дин» при нажатии Enter - PullRequest
107 голосов
/ 09 июня 2011

У меня очень простое приложение для Windows Forms.И в Windows (или, по крайней мере, в приложениях Windows Forms), когда вы нажимаете клавишу Enter, находясь внутри однострочного элемента управления TextBox, вы слышите Ding.Это неприятный звук, означающий, что вы не можете ввести новую строку, потому что это однострочный TextBox.

Это нормально.Тем не менее, в моей форме, у меня есть 1 TextBox и кнопка поиска.И я разрешаю пользователю выполнять поиск, нажимая клавишу ВВОД после того, как они закончили печатать, чтобы у него не было , чтобы использовать мышь для нажатия кнопки поиска.

Но этоЗвук дин звучит.Это очень раздражает.

Как мы можем сделать так, чтобы в моей форме вообще не звучал звук?

@ David H - Вот как я определяю нажатие клавиши ввода:

private void textBox1_KeyUp(object sender, KeyEventArgs e)
{
    if (e.KeyCode == Keys.Enter)
    {
        // Perform search now.
    }
}

Ответы [ 12 ]

0 голосов
/ 02 марта 2013
void RTextBox_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyData == Keys.Enter)
    {
        //do ...
        bool temp = Multiline;
        Multiline = true;
        e.Handled = true;
        Multiline = temp;
    }
}
0 голосов
/ 09 июня 2011

Установите для свойства IsDefault вашей кнопки поиска значение true. Это сделает ее кнопкой по умолчанию, и она будет автоматически нажата при нажатии Enter.

...