希望从一种形式中获取数据,将它们用作另一种形式中的变量

本文关键字:变量 另一种 获取 希望 一种 数据 | 更新日期: 2023-09-27 18:18:17

我几乎完成了使用WinForms与VS2012进行Connect4游戏。一切都工作得很好,但我想为用户带来一个专门的开始菜单窗口的选项。在那个菜单上,我有两个组合框,我需要从中提取文本,将它们用作另一种形式(游戏窗口)中的两个变量的值。我还有一个新游戏按钮,如果可能的话,它应该调用另一个窗体中的方法(基本上,我在我的游戏窗体中创建了一个"Initialization()"方法,我希望当我点击另一个窗体上的"New Game"按钮时,它会启动)。

我只找到了一些教程,展示了如何从一种形式到另一种形式做非常基本的事情(比如标记文本),但是我没有找到我具体问题的答案。

我在主表单中使用它来实例化菜单表单

public FormMenu myMenu;
myMenu = new FormMenu();

我想做的是,我可以用另一种形式做这样的事情:

amountOfRows = Int32.Parse(myMenu.comboBoxRows.Text);
amountOfColumns = Int32.Parse(myMenu.comboBoxColumns.Text);

你知道我该怎么做吗?

希望从一种形式中获取数据,将它们用作另一种形式中的变量

我很乐意看到一些示例代码,所以我可以帮助看到你的困惑所在。WinForms需要实例化另一个form

OtherForm form = new OtherForm();

一旦表单被实例化,你应该能够从它运行代码。

编辑:

根据你的实现,我建议在FormMenu中使用公共方法返回这些int值。

public int ReturnRows()
{
    return Int32.Parse(myMenu.comboBoxRows.Text);
}
public int ReturnColumns()
{
    return Int32.Parse(myMenu.comboBoxColumns.Text);
}

然后在myMenu被实例化的另一个表单中,你可以调用myMenu. returnrows()和myMenu. returncolumns ()

最简单的方法是将对表单的引用作为变量存储在菜单中。(您已经将其命名为myMenu)

然后你应该在表单中创建你需要的属性/属性,并为这些值添加setter。

最后使用

更新表单字段
myMenu.property = newvalue;

就这些