0

チャットシステムを開発しています。そして、テキスト ボックス内のテキストをチャット ログに送信するボタンがあります。ユーザーが Enter キーを押さないようにし、Enter キーを無効にするにはどうすればよいですか。このような投稿がたくさんあることは知っていますが、解決策はうまくいきませんでした。

4

3 に答える 3

4

ユーザーがEnterキーを押すのを止める必要はないと思いますが、代わりにEnterキーを押すとチャットを他の人に送信します。

また、許可するショートカットが他にある場合は、このC# を参照してください: テキスト ボックスで Enter キーを押すと、ボタンをトリガーするが、"Ctrl+A" などのショートカットを許可する方法は?

同じものを使用して、ブロックすることもできます

private void textBoxToSubmit_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyCode == Keys.Enter)
    {
        e.SuppressKeyPress=true;
    }
}
于 2013-08-07T18:10:10.837 に答える
4

次のようなことを試すことができます:-

if (e.KeyCode == Keys.Enter) 
{
    e.SuppressKeyPress = true;
}
于 2013-08-07T17:57:00.620 に答える
1

あなたの質問は控えめに言っても少しあいまいです。ただし、テキスト ボックス コントロールには KeyDown というイベントがあります: http://msdn.microsoft.com/en-us/library/system.windows.forms.control.keydown.aspx

このようにして、Enter キーが押されるたびにキャプチャし、必要に応じて動作を変更できます。以下に例を示します。

private void textBox1_KeyDown(object sender, KeyEventArgs e)
    {
        if (Keys.Enter == e.KeyCode)
        {
            MessageBox.Show("Enter Was Pressed");
            textBox1.Text = new String(textBox1.Text.Where((ch, i) => i < textBox1.Text.Length - 2).ToArray());
            textBox1.SelectionStart = textBox1.Text.Length;
        }
    }
于 2013-08-07T18:19:33.160 に答える