c# - string textbox




テキストボックスのEnterを押して、ボタンコマンドを実行します。 (5)

Enterキーを押して、検索ボタンの背後にあるコードを実行します。 私は検索ボタンにAccept Buttonプロパティを持っています。 しかし、私のボタンを表示しないようにすると、私の検索は実行されません。

私はテキストボックス内でEnterキーを押して、そのボタンが表示されていない間も実行できるようにしたいと考えています。 どんな提案も素晴らしいだろう! 以下はKeyDownイベントの私のコードでの試みです

if (e.KeyCode == Keys.Enter)
    {
        buttonSearch_Click((object)sender, (EventArgs)e);
    }

Enterを押したときにボタンをクリックするだけの場合はどうですか?

private void textbox1_KeyDown(object sender, KeyEventArgs e)
    {
        if (e.KeyCode == Keys.Enter)
        {
            buttonSearch.PerformClick();
        }

WPFアプリケーションでこのコードは完璧に動作します

private void txt1_KeyDown(object sender, KeyEventArgs e)
  {
     if (Keyboard.IsKeyDown(Key.Enter) )
         {
              Button_Click(this, new RoutedEventArgs());
         }
   }

また、フォームの.AcceptButtonプロパティを設定することもできます。 Enterは自動的にクリックイベントを作成します。

this.AcceptButton = this.buttonSearch;

テキストボックスのKeyDown-Eventに登録し、押されたキーがEnterであるかどうかを調べ、ボタンのEventHandlerを実行することができます:

private void buttonTest_Click(object sender, EventArgs e)
{
    MessageBox.Show("Hello World");
}

private void textBoxTest_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyCode == Keys.Enter)
    {
        buttonTest_Click(this, new EventArgs());
    }
}

    private void textbox1_KeyDown(object sender, KeyEventArgs e)
    {
        if (e.KeyCode == Keys.Enter)
        {
            //cod for run
        }
    }

    private void buttonSearch_Click(object sender, EventArgs e)
    {
        textbox1_KeyDown(sender, new KeyEventArgs(Keys.Enter));
    }






acceptbutton