高分形式表格数据传输

时间:2015-05-18 13:56:34

标签: c# forms transfer

我制作了一个简单的游戏,你可以在船上飞行,躲避小行星,直到它们击中你并且你爆炸了。我有一个游戏形式,然后当你在5秒后被击中(我使用计时器)时,它将打勾关闭该表格并打开一个新表格(EndGameForm)。我会显示我的代码,但似乎有失败,而且我对C#的了解非常有限。

private void GameEndTimer_Tick(object sender, EventArgs e)
{
        this.Visible = false;
        EndGameForm gform = new EndGameForm();
        gform.Show();
        GameEndTimer.Enabled = false;
        var frm2 = new EndGameForm(ScoreLabel.Text.ToString());
        frm2.Show();
}

这是第一种形式,从分数标签中保存文本并打开新表格。

public EndGameForm(string s)
{
        InitializeComponent();
        Score1Label.Text = s;
}

这是第二种形式,回顾保存并设置新的Highscore标签。

  

错误代码:错误1' SemesterProject.EndGameForm'不包含   取0个参数的构造函数\ HHS-FS2 \ Home $ \ Students \ 10th   级\ 985832 \ CP   C#\ SemesterProject \ SemesterProject \ GameForm.cs 82 33学期项目

1 个答案:

答案 0 :(得分:0)

您需要将某些内容传递给EndgameForm类的构造函数,因为它应该基于您的设计。

根据经验,这可以通过来自调用者类的字符串字段类来完成:

private string _tobeSentAsArgument {get; set;}

在初始化之后,您可以随时使用它:

private void GameEndTimer_Tick(object sender, EventArgs e)
{
    this.Visible = false;
    EndGameForm gform = new EndGameForm(this._tobeSentAsArgument);
    gform.Show();
    GameEndTimer.Enabled = false;
    var frm2 = new EndGameForm(ScoreLabel.Text.ToString());
    frm2.Show();
}