Windows 窗体
一组用于开发图形用户界面的 .NET Framework 托管库。
113 个问题
页面传递信息,在form1上有一个类似表单的页面,按钮在页面的中间位置,点击按钮会打开form2,form2有个按钮,点击按钮把数据传递到form1上,在保留原已经填好的信息,把从form2收到的信息直接显示在textBox上,怎么实现。
在 C# WinForms 应用程序中,可以通过在 Form2 中定义一个事件,将数据传递回 Form1。下面是一个简单的示例,展示了如何实现这个功能:
Form1:
using System;
using System.Windows.Forms;
namespace WinFormsApp
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2();
form2.DataTransferred += new EventHandler<DataTransferredEventArgs>(Form2_DataTransferred);
form2.Show();
}
private void Form2_DataTransferred(object sender, DataTransferredEventArgs e)
{
textBox1.Text = e.Data;
}
}
public class DataTransferredEventArgs : EventArgs
{
public string Data { get; set; }
public DataTransferredEventArgs(string data)
{
Data = data;
}
}
}
Form2:
using System;
using System.Windows.Forms;
namespace WinFormsApp
{
public partial class Form2 : Form
{
public event EventHandler<DataTransferredEventArgs> DataTransferred;
public Form2()
{
InitializeComponent();
}
private void button2_Click(object sender, EventArgs e)
{
string data = textBox2.Text;
OnDataTransferred(new DataTransferredEventArgs(data));
this.Close();
}
protected virtual void OnDataTransferred(DataTransferredEventArgs e)
{
if (DataTransferred != null)
DataTransferred(this, e);
}
}
}
如果答案是正确的,请点击“接受答案”并点赞。 如果您对此答案还有其他疑问,请点击“评论”。
注意:如果您想接收相关电子邮件,请按照我们的文档中的步骤启用电子邮件通知 此线程的通知。