Làm cho chúng Singleton không phải là một ý tưởng hoàn toàn tồi, nhưng cá nhân tôi sẽ không thích làm theo cách đó. Tôi muốn chuyển tài liệu tham khảo của một hình thức khác. Đây là một ví dụ.
Trình kích hoạt Form1 Form2 để mở. Form2 có quá trình khởi tạo quá tải, có dạng gọi là đối số và cung cấp tham chiếu tới các thành viên Form2. Điều này giải quyết vấn đề giao tiếp. Ví dụ tôi đã tiếp xúc với Thuộc tính nhãn là công khai trong Form1 được sửa đổi trong Form2.
Với cách tiếp cận này, bạn có thể thực hiện giao tiếp theo nhiều cách khác nhau.
Download Link for Sample Project
// Form1 bạn
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Form2 frm = new Form2(this);
frm.Show();
}
public string LabelText
{
get { return Lbl.Text; }
set { Lbl.Text = value; }
}
}
// Form2 bạn
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
private Form1 mainForm = null;
public Form2(Form callingForm)
{
mainForm = callingForm as Form1;
InitializeComponent();
}
private void Form2_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
this.mainForm.LabelText = txtMessage.Text;
}
}
alt text http://demo.ruchitsurati.net/files/frm1.png
alt text http://demo.ruchitsurati.net/files/frm2.png
Nguồn
2011-01-28 00:29:34
[Tương tác giữa các loại hình - Làm thế nào để thay đổi một điều khiển của một hình thức từ hình thức khác] (https://stackoverflow.com/a/38769212/3110834) –