访问C#中不同窗体之间的数据控件

本文关键字:之间 数据 控件 窗体 访问 | 更新日期: 2023-09-27 17:57:39

XmlDataDocument xmlDatadoc = new XmlDataDocument();
xmlDatadoc.DataSet.ReadXml(dir + listBox1.SelectedItem);
DataSet ds = new DataSet("Customer info");
ds = xmlDatadoc.DataSet;
dataGridView1.DataSource = ds.DefaultViewManager;
dataGridView1.DataMember = "Customer";

现在,如果ListBox控件"listBox1"位于应用程序的另一个形式中,例如"form1",我如何才能获得数据&在"Form2"中的数据网格中使用它?

访问C#中不同窗体之间的数据控件

据我所知,应该采用以下方式。

  1. 使用目标窗体中的属性,并在实例化其类时对其进行赋值
  2. 在目标窗体构造函数中传递数据源
  3. 您目前在Form2中,这里有另一种方式,Form1.ListBox.YourpropertyName
  4. 可以使用委托,但它需要大量内存,也应该在使用后进行处理
  5. 创建一个具有静态成员的类,并在转到目标窗体并访问目标窗体中的该值之前对其进行初始化

此外,控件的Access修饰符应适用于以其他形式访问

请注意如果您以前的表格处于打开状态,则第3点有效。否则,它将在列表框中显示空数据在第5点中,静态变量内存一旦使用就应该设置为null。