从form1访问form2中的不同元素,反之亦然

时间:2018-05-19 16:10:23

标签: c# visual-studio

我一直在发现form1和form2的一些问题,我希望在form1中按下一个按钮的结果是form2中按钮中文本的更改,所以主要是我的问题是如何在form2中访问此按钮form1,我想将int q的结果分配给图片中显示的按钮2的文本

private void button1_Click(object sender, EventArgs e)
    {
        Form2 f2 = new Form2();
        f2.Show();
        this.Hide();
       // int a=1;

        Random R = new Random();
        int start = R.Next(10, 999);


        if(start>99)
            {
                int x = start-1;
                int y = x%100;
                int z = start/y;
                int w = z+1;
                int q = start/w;
            }
        else
            {

                int y = start-1;
                int z = y/2;
                int w = start/z;
                int q = 1;
            }

    }

enter image description here

1 个答案:

答案 0 :(得分:0)

在Form2类中创建一个公共属性

public class Form2 : Form
{
    public string Button1Text 
    {
        set { this.Button1.Text = Value; }
    }
    ....
}

现在在form1中点击代码设置

private void button1_Click(object sender, EventArgs e)
{
    Form2 f2 = new Form2();
    f2.Show();
    .... your calculations
    f2.Button1Text = theResultOfYourCalculation.ToString()

当然,也可以通过Forms设计器将按钮的属性Modifiers设为Public。访问表单的内部控件(及其所有属性)是一个坏主意,从长远来看会导致设计非常糟糕的应用程序