Windows FormアプリケーションでRadioButtonのチェック状態を取得するコードを紹介します。
複数の項目から排他的に1つの要素を選択する場合にRadioButtonを利用すると簡単に実現できます。
RadioButtonのチェック状態を取得するにはCheckedプロパティの値を参照します。
Windowsフォームアプリケーションで下図のフォームを作成します。
RadioButtonを2つ、Buttonを1つ、Labelを1つ配置します。
下記のコードを記述します。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace FormRadioButton
{
public partial class FormSimpleRadioButton : Form
{
public FormSimpleRadioButton()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
if (radioButton1.Checked == true) {
label1.Text = "radioButton1 がチェックされています。";
}
else if (radioButton2.Checked == true) {
label1.Text = "radioButton2 がチェックされています。";
}
else {
label1.Text = "どちらもチェックされていません。";
}
}
}
}
Buttonをクリックするとbutton1_Click()メソッドが実行されます。RadioButtonのチェック状態はCheckedプロパティで確認できます。Checkedプロパティがtrueであれば、ラジオボタンはチェックされています。
上記のコードでは、radioButon1がチェックされていれば、label1に"radioButton1 がチェックされています。"のメッセージを表示し、radioButton2がチェックされていれば、label1に"radioButton2 がチェックされています。"のメッセージを表示します。
どちらもチェックされていない場合は、label1に"どちらもチェックされていません。"のメッセージを表示しますが、両方がチェックされていない状態には通常ならないため、このメッセージが表示されるケースはまずありません。
プロジェクトを実行します。下図のウィンドウが表示されます。
[button1]をクリックします。radioButton1がチェックされているため、ラベルに"radioButton1 がチェックされています。"のメッセージが表示されます。
radioButton2をチェックし、[button1]をクリックします。
radioButton2がチェックされている場合は、ラベルに"radioButton2 がチェックされています。"のメッセージが表示されます。
デフォルトで特定のRadioButtonにチェックをする場合の手順を紹介します。
フォームデザイナでデフォルトでチェックをしたいRadioButtonを選択します。
プロパティウィンドウの"Checked"プロパティの値をTrueに変更します。
フォームデザイナのRadioButtonがチェックのついた状態になります。
プロジェクトを実行しフォームを表示すると、CheckedプロパティをTrueに変更したRadioButtonがデフォルトでチェックのついた状態になります。