[ad_1]
複数のボタンに対して 1 つのイベントを作成するにはどうすればよいですか?
33BigLetters と 33SmallLetters のカスタム ロシア語キーボードがあります。
(合計 = 66 文字と各文字の 66 ボタン)
少し前にやったのは知っていますが、今はどこにも見つからず、やり方も覚えていません。
押されたボタンごとに、textbox.text が button.text 値を追加する単一のイベントを作成したいと考えています。
ありがとう。
それは次のようになりますが、私はこれで何か役に立つことはできません:
void MultiBtn_Click(Object sender, EventArgs e) { Button clickedButton = (Button)sender; textBox1.Text += clickedButton.Text; }
解決策 2
あなたが持っているコードはあなたが必要としているもののほとんどです。あなたがする必要があるのは、それを各ボタンの Click イベントに追加することだけです。 これは、クリック ドロップダウンを使用してデザイナーで行うか、コードで行うことができます。
myButton1.Click += new EventHandler(MultiBtn_Click); myButton2.Click += new EventHandler(MultiBtn_Click); ...
ただし、Text プロパティで問題が発生した場合に、文字を格納できる Tag プロパティもあります。
解決策 1
すべての Click イベント ハンドラーがそのイベント ハンドラーを使用するように設定するだけです。 ハンドラー内で、次のようにします。
Button button = sender as Button; switch (button.Name) { case "button1": // do something for button1 break; case "button2": // do something for button2 break; // and so on }
編集 ====================================
なぜこれは 1 票だったのですか? 投稿された質問に対する実行可能な解決策です。
解決策 3
void MultiBtn_Click(オブジェクト送信者、
EventArgs e)
{
Button clickedButton = (Button)sender;
textBox1.Text += clickedButton.Text;
}
これは機能しています。各ボタンのクリック イベントに「MultiBtn_Click」という名前を付けるだけです。
[ad_2]
コメント