Головна‎ > ‎C# WinForms‎ > ‎

Взаємодія між формами


class Anketa
{
     public static string name;
     public static string company;
     public static string old;
}



private void button1_Click(object sender, EventArgs e) 
   Form2 frm2 = new Form2(textBox1.Text); 
   frm2.Show(); 
}


public Form2(string qs) 
   InitializeComponent(); 
   textBox1.Text = qs; 
}



Form1

public static Form2 f2 = null;
private void Form1_Load(object sender, EventArgs e)
{
   f2 = this;
}

Form2

Form2.f2.textBox1.Text = textBox2.Text;



Form1.cs

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

        private void button1_Click(object sender, EventArgs e)
        {
            Form2 tempDialog = new Form2(this);
            tempDialog.ShowDialog();
        }

        public void msgme()
        {
            MessageBox.Show("Parent Function Called");
        }
    }



Form2.cs

    public partial class Form2 : Form
    {
        private Form1 m_parent;

        public Form2(Form1 frm1)
        {
            InitializeComponent();
            m_parent = frm1;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            m_parent.msgme();
        }
    }





Form2 frm = new Form2();
frm.label1.Text = "hello";
frm.Show();



Form2 належить Form1. Якщо Form1 закривається або згортається, Form2 також закривається або згортається. Дочірні форми також ніколи не відображаються ззаду форми-власника.

userForm formСhild = new userForm();  
formСhild.Owner = this;