2016-07-29 3 views
0

Pls場合によってはC#のボタンについて助けが必要です。特定のボタンがクリックされた時期を知るにはどうすればいいですか? if文を使用してイベントを書きたいと思います。だから私は特定のボタンをクリックすると何かをしたい。私はすべてのコードを1つの関数またはクラスの中に入れて、いつでも呼び出すことができます。たとえば、C#でボタンがクリックされたときを知る方法

private void showPanel() 
{ 
    if (dashPanelButton.Clicked == true) 
    { 
     dashPanel.Visible = true; 
    } 
    else if(studInfoBtn.Clicked == true) 
    { 
     studInfoPanel.Visible = true; 
    } 
    else 
    { 
     homePanel.Visible = true; 
    } 
} 

上記のコードは実際の動作コードではないことに注意してください。ただ、私自身

答えて

0

ボタンClickイベントを登録して、あなたが「ボタンがクリックされたかどうかを確認」しません

dashPanelButton.Click += new EventHandler(myhandler); 

protected void myhandler(object sender, EventArgs e) 
{ 
    //do whatever you want 
} 
2

のようなイベントハンドラで、あなたがやりたい説明するためにそれを使用。コードはちょうど座ってそのクリックが起こるのを待つつもりはありません。代わりに、クリックイベントハンドラで「クリックボタンに対応」:

void myButton_Click(Object sender, EventArgs e) 
{ 
    // do something when the button is clicked 
} 

あなたはデザイナーで、またはコード内のボタンにハンドラをアタッチすることができます:あなたの場合は、今すぐ

myButton.Click += new EventHandler(myButton_Click); 

同じハンドラをの複数のボタンに使用したい場合は、Object senderが便利になります。これはイベントを起こしたオブジェクトへの参照です。だからあなたの場合には、それがクリックされたボタンのようになります。

void myButton_Click(Object sender, EventArgs e) 
{ 
    var theButton = (Button)sender; 
    // now "theButton" is the button which was clicked 
} 
+0

私が意味するのは、特定のボタンがクリックされたときに特定のパネルを表示するメソッド "showPanel()"を作成することです。次に、各ボタンイベントでshowPanelメソッドを呼び出します。そのため、ボタンをクリックするたびにshowPanelメソッドが呼び出され、showPanelメソッドはクリックされたボタンを確認してから特定のパネルを表示します。ありがとう –

+0

@OyetokeTobiEmmanuel:その場合、あなたは 'showPanel'メソッドに' sender'を渡すように思えます。 – David

+0

どうすればいいですか? –

0

あなたはこのように、あなたがやりたいことができます。

private void showPanel(Object sender, EventArgs e) 
    { 
     if (sender == dashPanelButton) 
     { 
      dashPanel.Visible = true; 
     } 
     else if (sender == studInfoBtn) 
     { 
      studInfoBtn.Visible = true; 
     } 
     else 
     { 
      homePanel.Visible = true; 
     } 
    } 

は必ずあなたのボタンが

dashPanelButton.Click += new EventHandler(showPanel); 
studInfoBtn.Click += new EventHandler(showPanel); 
正しく配線されていることを確認
関連する問題