C#中的InitializeComponent(当前上下文中不存在)

时间:2013-04-26 11:20:17

标签: c# winforms

我遇到'InitializeComponent'的问题

Visual Studio写了我:当前上下文中不存在名称“buttonEDYTUJ_Edytuj”。

        Controls.Add(buttonDODAJ);
        buttonDODAJ = new Button();
        buttonDODAJ.Text = "Dodaj";
        buttonDODAJ.Click += new System.EventHandler(buttonDODAJ_Dodaj);
        buttonDODAJ.Location = new Point(20, 50);
        InitializeComponent();

以下代码来自类构造函数。

2 个答案:

答案 0 :(得分:2)

这与初始化的顺序无关。相反,编译器抱怨您没有在表单中定义buttonDODAJ_Dodaj处理函数:

void buttonDODAJ_Dodaj(object sender, EventArgs e)
{
  // whatever...
}

当然,一旦编译它,它将无法正常工作,因为您在创建它之前以及在组件本身初始化之前将控件添加到Controls。如果这是真正的代码,似乎你已经设法重新排序这些行。

答案 1 :(得分:1)

试试这个:

 buttonDODAJ = new Button();
 buttonDODAJ.Text = "Dodaj";
 buttonDODAJ.Click += new System.EventHandler(buttonDODAJ_Dodaj);
 buttonDODAJ.Location = new Point(20, 50);
 Controls.Add(buttonDODAJ);
 InitializeComponent();

添加按钮事件:

private void buttonDODAJ_Dodaj(object sender, EventArgs e)
{
}