• ベストアンサー

C#で、ボタンを押したときに引数を渡してイベントに飛ぶ方法

お世話になります。 C#で、複数のボタンを配置し、同じメソッドに飛ぶように イベントを起こしたときに、どのボタンから飛んできたのかを わかるように、引数を渡すことは可能でしょうか。 Javaでいうところの、setActionCommand()のような ものなのですが…。 初歩的な質問で申し訳ありませんが、なにとぞよろしく お願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • tasoh
  • ベストアンサー率45% (19/42)
回答No.2

クリックイベンとと解釈してですが button1_Click(object sender, EventArgs e) 飛んだ先のメソッドの引数が 上みたいなことになってると思うのですが このobjectやEventArgsで色々と情報を取得することができます Button b = (Button)sender; などとし、objectをキャストすると イベントを起こしたボタンを取得することができるので そのボタンの Name や Text などのプロパティをみれば ボタンを区別することができます。 見当違いでしたら申し訳ありません

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • D-Matsu
  • ベストアンサー率45% (1080/2394)
回答No.1

イベントハンドラの引数に送信者情報が乗っています。 http://msdn.microsoft.com/ja-jp/library/awbftdfh(VS.80).aspx

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 一般的な引数の順序

    一般的な話として、複数の引数をもらうメソッドを作る場合、 引数はどのような順序にするのが一般的なのでしょうか? C#やJavaのメソッドを想定しています。 ご存知の方がいらっしゃいましたら、教えてくださいm(_ _)m

  • c# イベント用デリゲートの引数

     こんにちは。c#初心者です。  今回はイベントに用いるためのデリゲートの引数に関する質問です。  通常、「System.Windows.Forms.Control」のイベントで用いられているデリゲートの引数は全て  void SampleHandler(object sender, SampleEventArgs e)  のようになっていますが、コントロール以外のクラス(System.Windows.Forms.Controlから派生しないクラス)、例えばコレクションクラスのようなものでも同じように「EventHandler<T>」デリゲートを使わなければならないのでしょうか?  それともう一つ質問です。コントロールクラスでのイベントの引数は  SampleHandler(object sender, …  のようにせずに  SampleHandler(SampleControl sender, …   としてはいけないのでしょうか? (いけないと思いますが…)  質問は以上の2点です。どなたか詳しい方がいらっしゃいましたら教えていただけませんか?

  • 関数と引数の関係とは?

    只今ゼロからプログラミングの勉強をしています。 言語はC言語を習得したいと思ってます。 (将来的にはJavaも!) す~っごく初歩的な質問で申し訳ないんですが 関数とは何でしょうか? 引数とは何でしょうか? またその関係について、非常にわかりやすく 簡単に教えていただけないでしょうか? よろしくお願いします。

  • C# のクリックイベント

    別のイベントからクリックイベントを発生させるのに Button1.PerformClick(); は、うまくいくのですが、 これがピクチャーボックスになったとき pictureBox1.PerformClick(); 下記のエラーが出てしまいます。 ピクチャーボックスのボタンクリックイベントを発生させる方法はないでしょうか? 'System.Windows.Forms.PictureBox' に 'PerformClick' の定義が含まれておらず、型 'System.Windows.Forms.PictureBox' の最初の引数を受け付ける拡張メソッドが見つかりませんでした。using ディレクティブまたはアセンブリ参照が不足しています。

  • 引数の概念について質問

    引数とは、以下のURLに次のように定義されていました。 「メソッドを呼び出す際に渡された値を受け取る変数。」 http://www.kab-studio.biz/Programing/JavaA2Z/Word/00000160.html 質問:引数とは、「あるメソッドに入力する(渡す)値」ですよね?それなのに、「メソッドを呼び出す際に渡された値を受け取る変数。」とかいてありますが、これはどういうことですか? java初心者の私でもわかりやすいように解説してくだされば幸いです。 質問2:上記URLに以下のようなことも書かれていました。 「呼び出す際に「メソッド名( 引数に渡す値 );」という書式で「引数の変数」に「引数に渡す値」をコピーすることができる。 このコピーは、変数の代入と全く同じである。」 これもよく意味がわかりません。 とくに、「引数の変数」という記述がよくわかりません。また、なぜ変数の代入と同じなのですか? うーん、、よくわからない。

    • ベストアンサー
    • Java
  • javaのメソッドの引数で、クラスの配列を指定する

    javaのメソッドの引数で、クラスの配列を指定する事は可能なのでしょうか? 受け取るメソッドでは引数の所に何と書けば良いのでしょうか? 教えてください!

    • ベストアンサー
    • Java
  • C# Process.Startメソッドで複数引数を渡したい

    タイトルの通り、Process.Startメソッドで起動するアプリに複数2つ以上の引数を渡し、実行させたいのですが、方法がわかりません。 以下、サンプル1のように引数が1つならいいのですが、 サンプル2のように2つ以上の引数の場合、どうしたらよいでしょうか?ご存知の方、ご教授お願いいたします。 [サンプル1] Process.start(abc.exe, "c:\abc.txt") [サンプル2] Process.start(abc.exe, "c:\abc.txt", "c:\def.txt")

  • なぜmainメソッドにだけ固定の引数があるのか?

    Javaの初心者です。 勉強していてふと思ったのですが、なぜmainメソッドだけに main(String[] X) のようにのストリング型の配列を引数に必ず設定しないといけないのでしょうか? 他のメソッドであれば、引数の有る無しをプログラマが決めることができますよね? そのため疑問に思ったのですが、どなたか教えていただけないでしょうか?

  • C言語でタイマーを作成する方法について

    初歩的な質問で申し訳ございません。 C言語を使用して、 何らかのイベントから1分後にタイマーを設定し、時間が経過したら メッセージを表示するプログラムを作成する方法について 教えて頂けませんでしょうか? #マニュアルを調べてみると、setitimer()という関数があるよう #ですが、引数に渡す値がよくわかりません。この関数は関係ない??

  • List型の引数を設定する方法

    複数の名前などを setName(List<String> NameList) ↑こんな感じのメソッドに渡してセットしたいのですが、 この時setName()メソッドを呼び出す時の引数に 複数の名前を同時に入れるには、どういう記述の仕方を したらよいと思いますか? ちなみに、この時点ではまだListの生成をしてはいけなくて、 メソッドに格納した後Listを生成、getName()メソッドから オブジェクトを取得するようにしたいのですが・・・ いまいちListって分かりません。