【问题标题】:Interaction between forms表单之间的交互
【发布时间】:2014-07-29 21:10:07
【问题描述】:

我正在使用 Visual Studio 2012(Windows 窗体应用程序),我有两种形式,一种带有标签,另一种带有按钮。我想要它,以便当您单击按钮时,另一个表单上的标签会上升一个。我已经有了:

Label1 = Label1 + 1

我只需要知道如何与这两种形式建立联系。也许调用一个函数? 顺便说一句,我是程序和脚本的新手,所以简单来说请。

【问题讨论】:

  • 也许只是自己尝试一下?还是使用搜索功能?

标签: winforms forms function visual-studio-2012 interaction


【解决方案1】:

这是我为您创建的示例。像这样添加Formr2:

public partial class Form2 : Form
{

    private void button1_Click(object sender, EventArgs e)
    {
        Form1.Instance.Controls.Find("label1", true).First().Text = "Some thing";
    }
}

和Form1:

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
        _Instance = this;
    }

    private static Form1 _Instance;
    public static Form1 Instance
    {
        get { return _Instance; }
        set { Instance = value; }
    }

    private void button1_Click(object sender, EventArgs e)
    {
        new Form2().Show();
    }

【讨论】:

  • @UweKeim 该变量也可以是任何控件。这段代码只是一个更好的想法的开始!
  • 我认为@UweKeim 试图说明的一点是,这是一种可怕的做法,除了坏习惯和毫无价值的代码之外,这并不是任何事情的开始。这样的例子没有帮助。