Możesz np. przypisać zdarzenie CheckedChanged każdego z radiobutton-ów do jednej funkcji.
radioButton1.CheckedChanged += radioButtons_CheckedChanged;
radioButton2.CheckedChanged += radioButtons_CheckedChanged;
radioButton3.CheckedChanged += radioButtons_CheckedChanged;
i za pomocą np. switch-a ...
były by 3 panele ale wyświetlał by się tylko ten który był by przypisany do zaznaczonego radiobuttona
całość
using System;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
radioButton1.CheckedChanged += radioButtons_CheckedChanged;
radioButton2.CheckedChanged += radioButtons_CheckedChanged;
radioButton3.CheckedChanged += radioButtons_CheckedChanged;
hidePanels();
}
private void Form1_Load(object sender, EventArgs e)
{
radioButton1.Checked = true;
panel1.Visible = true;
}
private void radioButtons_CheckedChanged(object sender, EventArgs e)
{
RadioButton clickedButton = (RadioButton)sender;
if (clickedButton.Checked == true)
{
hidePanels();
switch (clickedButton.Name)
{
case "radioButton2":
panel2.Visible = true;
break;
case "radioButton3":
panel3.Visible = true;
break;
case "radioButton1":
default:
panel1.Visible = true;
break;
}
}
}
private void hidePanels()
{
panel1.Visible = false;
panel2.Visible = false;
panel3.Visible = false;
}
}
}