【问题标题】:C# Button is a field, but used like a type [closed]C# Button 是一个字段,但用作类型 [关闭]
【发布时间】:2014-06-16 14:38:58
【问题描述】:

我正在尝试在 C# 中制作井字游戏程序,但是当我设置用于单击按钮的事件处理程序时,出现错误“”button1 is a field, but used as a type”我不知道为什么会这样,考虑到到目前为止的程序几乎与我在 C# 中的第一个项目的开始相同,它运行良好。

namespace Project_2
{
    public partial class Form1 : Form
    {
        public delegate void EventHandler(object sender, System.EventArgs e);
        public class Button
        {
            private EventHandler handler;

            public event EventHandler Click
            {
                add { handler += value; }
                remove { handler -= value; }
            }

        }

        public Form1()
        {
            InitializeComponent();
            button1.Click += new System.EventHandler(button1_Click);
            button2.Click += new System.EventHandler(button2_Click);
            button3.Click += new System.EventHandler(button3_Click);
            button4.Click += new System.EventHandler(button4_Click);
            button5.Click += new System.EventHandler(button5_Click);
            button6.Click += new System.EventHandler(button6_Click);
            button7.Click += new System.EventHandler(button7_Click);
            button8.Click += new System.EventHandler(button8_Click);
            button9.Click += new System.EventHandler(button9_Click);

        }
        void button1.Click(object sender, EventArgs e)
        {

        }

    }

}

感谢您的任何帮助!谢谢。

【问题讨论】:

  • 你的处理方法应该命名为button1_Click,而不是button1.Click(下划线,不是句点)。

标签: c# winforms button


【解决方案1】:

至少您不能在方法名称中包含.。所以你的点击处理程序应该是:

void button1_Click(object sender, EventArgs e)
{

}

试试看!

【讨论】:

  • 谢谢!我现在有点傻。
  • @m3aga1n 很高兴我能帮上忙
【解决方案2】:
button1.Click += new System.EventHandler(button1_Click);

有效!因为使用它,您将为button1 设置 Click 事件处理程序。但是

void button1.Click() { }

无效 并且正在引起问题。这就像您尝试在 button1 上调用方法 Click

尝试使用其他名称来命名它。喜欢button1Clickbutton1_Click。此外,您应该始终记住 C# 标识符的命名约定。除了_ 之外,它们不允许有任何特殊字符。

【讨论】:

    【解决方案3】:

    试试这个:

    void button1_Click(object sender, EventArgs e)
    {
      // add code here
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-26
      • 1970-01-01
      • 1970-01-01
      • 2016-07-18
      • 2015-08-11
      • 1970-01-01
      相关资源
      最近更新 更多