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”的数据网格中使用它?
最佳答案
据我所知,应该有以下方法。
- 使用目标表单中的属性并在实例化其类时对其进行赋值
- 在目标表单构造函数中传递数据源。
- 您目前在 Form2 中,这是另一种方式,Form1.ListBox.YourpropertyName;
- delegates可以用,但是内存消耗大,用完后要处理掉。
- 创建一个带有静态成员的类并在转到目标表单之前对其进行初始化并在目标表单中访问该值
另外,控件的访问修饰符要适合其他形式的访问
请注意如果您之前的表格处于打开状态,则第 3 点有效。否则它会在列表框中显示空数据 并且在第5点中,静态变量内存一旦使用就应该设置为null。
关于c# - C#中不同窗体之间的访问数据控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6137134/