[C#] RadioButtonを複数グループで利用する

このページのタグ:[C#]
RadioButtonを複数グループで利用する手順を紹介します。

複数グループにならない例

Windowsフォームに下図のようにRadioButtonを配置します。


プロジェクトを実行します。デフォルトでは最初のRadioButtonが選択状態になっています。


RadioButtonをクリックするとチェックを変更できますが、全体が1つのグループになっており、4つのRadioButtonのチェックがすべて排他になっており、1つのみしかチェックできません。


複数のグループに分ける手順

RadioButtonを複数のグループに分ける場合は、GroupBoxを利用します。[ツールボックス]ウィンドウから[コンテナー]セクションにある[GroupBox]を選択しフォームにドラッグ&ドロップします。


今回は2つのグループを作成しますので、GroupBoxを2つ配置します。


RadioButtonをドラッグしてGroupBox内に配置します。RadioButtonがGroupBox内に配置されることで、グループ分けができます。


デフォルトでチェックするRadioButtonを選択し、プロパティウィンドウでCheckプロパティをTrueに変更します。


今回は、radioButton1とradioButton4をデフォルトでチェックします。

コード

下記のコードを記述します。

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 FormMultiGroupRadioButton : Form
  {
    public FormMultiGroupRadioButton()
    {
      InitializeComponent();
    }

    private void button1_Click(object sender, EventArgs e)
    {
      if (radioButton1.Checked == true) {
        label1.Text = "radioButton1 がチェックされています。";
      }
      else {
        label1.Text = "radioButton2 がチェックされています。";
      }

      if (radioButton3.Checked == true) {
        label2.Text = "radioButton3 がチェックされています。";
      }
      else {
        label2.Text = "radioButton4 がチェックされています。";
      }

    }
  }
}

解説

[button1]クリック時にbutton1_Click()メソッドが実行されます。
メソッド内で各RadioButtonのCjeckedプロパティを確認し、trueであれば、そのチェックボックスがチェックされている旨のメッセージをLabelに表示します。

実行結果

プロジェクトを実行します。下図のウィンドウが表示されます。ラジオボタンのグループが2つに分かれており、groupBox1,groupBox2それぞれでラジオボタンがチェックできる動作になります。


[button1]をクリックします。ラベルにラジオボタンのチェック状態のメッセージが表示されます。


ラジオボタンのチェック状態を変更して[button1]をチェックすると、ラベルに表示されるメッセージも変化します。


プライバシー    iPentecについて
iPentec all rights reserverd. (ISDC)