private void radioButton1_CheckedChanged(object sender, EventArgs e)
{
if (radioButton1.Checked == true)
button1.BackColor = Color.Red;
}
private void radioButton2_CheckedChanged(object sender, EventArgs e)
{
if (radioButton2.Checked == true)
button1.BackColor = Color.Blue;
}
private void button1_Click(object sender, EventArgs e)
{
button1.BackColor = Color.White;
radioButton1.Checked = false;
radioButton2.Checked = false;
}
直接指向同一个事件 啊
不是很明白你的功能需求.,也许有更好的设计方案
目前来说.可以考虑将radioButton控件放到radioButton数组中..
要么就定义一个函数,参数为你需要操作到的对象,,每次调用将对象传进来进行相应操作
把所有的click事件都设置为这个方法
Private Void radioButton_checkedchange(object sender,EventArgs e)
{
If(((RadioButton)sender).checked==true)
((RadioButton)sender).BackColor=Color.Red;
}
手机手打不易,巧用sender!
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
AddEvent();
}
private void buttonClick(object sender, EventArgs e)
{
//这里写入你希望做的内容
Button btnTmp = (Button)sender;
btnTmp.Text = DateTime.Now.ToString();
}
/// <summary>
/// 遍历控件,绑定方法。
/// </summary>
private void AddEvent()
{
Button btnTmp;
foreach (Control ctrlTmp in this.Controls)
{
if (ctrlTmp is Button)
{
//如果你窗口或者容器上,只希望某部分这类控件绑定,就设定这些控件的Tag属性,这里增加判断if(btnTmp.Tag=...),或者通过名称判断等方法。
btnTmp = (Button)ctrlTmp;
btnTmp.Click += buttonClick;
}
}
}
}