【问题标题】:No overload for method 'form3' takes '0' arguments C#方法'form3'没有重载需要'0'参数C#
【发布时间】:2012-12-13 07:21:54
【问题描述】:

我已在 form2 上使用此方法将值传递给 form3:

**form2.cs**

Form3 frm3 = new Form3(cbDelivery.Text, cbOderNo.Text, cbCartonCode.Text, lblGRV.Text);
frm3.Show();
this.Hide();

但是现在每次我想使用它时,我都会得到“方法 'form3' 没有重载需要 '0' 参数”。

我确实理解它在寻找相同的值,但我不需要它们。例如,当我在 form4 并想回到 form3 时。

如何绕过这个?

提前致谢。

【问题讨论】:

  • 你有一个名为form3的方法吗?你的意思是做一个Form3而不是一个form3? (C# 区分大小写)
  • 错误信息说的哪一行是错误的?您应该在错误消息中有一个文件和一行 - 发布该行

标签: c# .net winforms


【解决方案1】:

在您的代码中的某处,调用了一个名为 form3 的方法(在您的代码示例中,它是一个构造函数,但错误说明并非如此),参数为零。重载是一项功能,可让您创建具有相同名称但参数数量不同的多个方法。所以编译器正在寻找一个匹配项,并告诉你这个方法没有重载,它接受 0 个参数。你应该修复你的方法调用。

【讨论】:

    【解决方案2】:

    如果我正确理解了您的查询,我认为这可能会对您有所帮助

    passing data between 3 windows forms in visual studio using C#

    【讨论】:

      【解决方案3】:

      您可以在定义类时为构造函数参数设置默认值。

      或者定义一个不带参数的重载构造函数。

      public class form3
      {
          public form3(string cbDelivery="", string cbOrderNo = "",
                       string cbCartonCode = "", string lblGRV = "")
          {
      
          }
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-05-26
        • 1970-01-01
        相关资源
        最近更新 更多