.net column

.NET開発者のためのブログメディア

C#でのボタンクリックとは?登録方法をご紹介!

2020年07月09日
SE
ボタンクリックってどのようなものなのでしょうか?
PM
ボタンをクリックせずに発行できることです。登録方法をこれからご紹介していきます。

C#でのボタンクリックについて

今回は、C#でのボタンクリックについて説明します。

クリックイベントは、ボタンをクリックせずとも発行できます。また、ダブルクリックイベントも扱えます。C#でのボタンクリックに興味のある方はぜひご覧ください。

Clickイベントの実装(デザイナー)

C#でボタンクリックのイベントを発生させるには、デザイナー画面から、イベントハンドラに設定します。
実際のソースコードを見てみましょう。

アプリケーションを実行し、button1ボタンをクリックすると、MessageBoxが表示されることが分かります。

Clickイベントの実装(ソースコード)

デザイナー画面ではなく、C#のソースコード上でイベントハンドラを登録できます。
デザイナー画面からbutton1_Clickを削除してください。

そのうえで、実際のソースコードを見てみましょう。

button1.Click += new EventHandler(button1_Click)でイベントハンドラを登録しています。
アプリケーションを実行し、button1ボタンをクリックすると、MessageBoxが表示されることが分かります。

PerformClickメソッド

先ほどのサンプルプログラムでは、button1ボタンをクリックするとClickイベントが発生してMessageBoxが表示されました。
C#では、ButtonコントロールのClickイベントを、プログラムコードから発生させられます。

実際のソースコードを見てみましょう。

button2をクリックすると、Clickイベントが発生し、button1のClickイベントを発行します。
button1ボタンをクリックしていませんが、button1がクリックされたこととして動作しています。

PerformClickメソッドを使用することで、button1クリック時の内部処理を知る必要がなくなるというメリットがあります。
つまり、button1_Clickにお任せできるということです。

しかし、以下のソースコードのように、ButtonコントロールのVisibleプロパティがfalseの場合は、PerformClickメソッドは何もしません。

PerformClickメソッドでClickイベントを発行できるか否かは、ButtonコントロールのCanSelectプロパティで確認できます。
CanSelectプロパティがtrueの場合はPerformClickできます。

このように、C#ではPerformClickメソッドでClickイベントを発行できます。

ボタンの有効無効

C#では、ボタンコントロールの有効無効を設定できます。
デザイナーから「Enabled」プロパティを変更します。
また、ソースコード上で変更することもできます。

プログラムを実行し、button2をクリックするとbutton1の有効無効が切り替わることが分かります。

ダブルクリック

C#では、Clickイベントだけでなく、ダブルクリックイベントも発行できます。
SetStyle メソッドを使用し、Buttonコントロールでダブルクリックを有効にする必要があります。

また、ダブルクリックが有効になっているカスタムボタンを作成する必要がありますので、デザイナーからbuttonを削除してください。

実際のソースコードを見てみましょう。

クリックすると、FormのBorderStyleが変更になり、ダブルクリックするとFormのBorderStyleが元に戻ってMessageBoxが表示されることが分かります。

このように、C#ではダブルクリックイベントも発行できます。

SE
メソッドを使うことで、さまざまな手法があるのですね。
PM
ボタンクリックを使うことで、イベントハンドラを登録してみましょう。

C#のボタンクリックを活用しよう

単純なボタンクリックにおけるイベントハンドラの登録方法だけでなく、PerformClickメソッドを利用したイベントハンドラの登録方法について説明しました。また、ダブルクリックのイベントハンドラ登録方法についても紹介しました。

ぜひご自身でC#のソースコードを書いて、理解を深めてください。


.NET分野でのキャリアアップをお考えの方は、現在募集中の求人情報をご覧ください。

求人一覧

また、直接のエントリーも受け付けております。

エントリー(応募フォーム)