【问题标题】:Reset/Reload current form重置/重新加载当前表格
【发布时间】:2013-03-19 14:51:45
【问题描述】:

我一直在尝试通过关闭它并打开一个新表单来将当前表单重置为原始状态。我希望重置表单对象,重新声明变量,清除类对象等空白数据。

这是我的代码:

if (btnRandom.Text == "Reset")
{

    SetupScreen form = new SetupScreen();
    form.Show();
    this.Dispose();

    //Create new class for form / or launch load events as normal 
    form.Mybattleship = new battleship()
    form.SetupScreen_Load(this, null);
}

我在网上试过很多方法,都没有奏效..即使是过于复杂的..

哦,我忘了说我需要新表单就像它刚刚正常加载一样,所以加载事件等会触发

【问题讨论】:

  • 您是指Battleship 类吗? thisSetupScreen 的当前实例吗?如果是这样,创建一个Battleship 不应该是相关的,更多信息/代码将是可取的。
  • 您的用户需要做什么才能完全关闭/打开表单以进行重置?重置文本框/变量值不是更有效吗?,编辑我说这是你几乎要面对闪烁的原因,无论你在切换到新表单时做什么
  • 嗯,基本上我正在创建战舰棋盘游戏的电子版本,我想要重置 SetupScreen,以便用户可以重新开始,而不是遍历每个表单对象,清除所有变量等我想要一个简单的方法来简单地关闭并重新打开一个新表单
  • 是否考虑为默认值创建一个可以在重置和加载时调用的方法?
  • 呵呵,我没想到 ^-^ 谢谢 :D

标签: c# forms reload reset


【解决方案1】:

您最好创建一个可以调用的方法,该方法将为您在打开表单和重置时可以使用的项目设置默认值...

public SetupScreen()
{
InitializeComponent();
SetDefaultValues();
}
private void SetDefaultValues()
{
//start  values..
}
public void ResetBtn_Click(object sender, EventArgs e)
{
SetDefaultValues();
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-02-22
    • 2014-03-09
    • 1970-01-01
    • 2023-04-11
    • 1970-01-01
    • 1970-01-01
    • 2011-12-31
    相关资源
    最近更新 更多