System.ArgumentException:'参数无效。 (showDialog错误)

时间:2018-11-03 07:21:18

标签: c# messagebox showdialog bunifu

我是C#的新手,我正在尝试对一个页面进行编码,在该页面上选择一个按钮,它将把图像及其文本传递到另一页面,但是,它向我显示了此错误。 (我在Stars中的代码有误) 抱歉,我还是这个新手,所以我不明白它的意思。

在System.Drawing.dll中发生了类型为'System.ArgumentException'的未处理的异常 参数无效。

(第一个代码是要插入的图像和消息)

(第二个代码用于将图像和消息插入第一个代码)

这是第一个代码

public Booking(Image passingimage, string bandtitle)
{           
  InitializeComponent();
  pictureBox1.Image = passingimage;
  bunifuCustomLabel5.Text = bandtitle;
}

public static void Shbooking(string bandtitle, Image passingimage)
{
  Booking bk = new SoftwarePrj_LawZhiMing.Booking (passingimage,bandtitle);
  **bk.ShowDialog();**
}

第二个密码

public partial class EandB : UserControl
{
  Image passingimage;
  public static string passingtitle;

  private void BunifuThinButton21_Click_1(object sender, EventArgs e)
  {
    ((Home)this.TopLevelControl).Hide();
    passingimage = pictureBox6.Image;
    passingtitle = bunifuCustomLabel2.Text;
    Booking.Shbooking(passingtitle, passingimage);
  }
}

1 个答案:

答案 0 :(得分:0)

您不能使用至少一个参数创建一个构造函数。您应该创建两个-一个是默认值:

public Booking()
{
    InitialiseComponent();
}

第二个构造函数是您想要的:

public Booking(Image passingimage, string bandtitle)
{
    InitialiseComponent();
    //Your code goes here
}

之所以这样,是因为该程序将启动不带任何参数的Form。因此,您必须编辑第一个代码,使其具有两个构造函数:

public Booking()
{
    InitialiseComponent();
}

public Booking(Image passingimage, string bandtitle)
{
    InitialiseComponent();
    //Your code goes here
}