private void btn_OrdinaryCustomer_Click(object  sender, EventArgs e) 
        {
            ChangeColor(sender);//出错,参数不对;
        }
 
            
            private void ColorChange(control  sender)
            {               if (System.Convert.ToBoolean(sender.Tag))
                {
                    sender.Tag = 0;
                    sender.BackColor = Color.FromArgb(0, 64, 0);
                    sender.ForeColor = Color.Gold;
                    sender.BackgroundImage = Resources.Logo;
                }
                else
                {
                    sender.Tag = 1;
                    sender.BackColor = Color.Transparent;
                    sender.ForeColor = Color.Gray;
                    sender.BackgroundImage = Resources.Logo;
                }
            }

解决方案 »

  1.   

     private void ColorChange(object sender)
      

  2.   

    private void ColorChange(object sender)
    这样的话会出现后续的错误:
      sender.Tag = 0;
      sender.BackColor = Color.FromArgb(0, 64, 0);
      sender.ForeColor = Color.Gold;
      sender.BackgroundImage = Resources.Logo;
     这一系列属性都不能读取
      

  3.   

    使用时:
    ColorChange((control)sender);这样会把object 变成 ColorChange方法要的control
      

  4.   

    Button btn = sender as Button ;