我是 .NET 和 C# 的初学者,所以我遇到了一个可能很容易解决的问题(?)。
我有一个 Xml 文件作为数据源。我设法在 DataGridView 中显示该数据。双击时,我打开一个用作编辑掩码的新表单。但是,当我在编辑表单中点击“确定”按钮时,如何将 DataSet 条目传递给编辑表单并将其同步回底层 DataSource 的 DataGridViews?
这是我到目前为止所拥有的:
主要形式:
public partial class Main : Form
{
private DataSet dataSet;
private EditForm editForm;
public Main()
{
InitializeComponent();
}
private void readXmlFile(object sender, EventArgs e)
{
// bind DataGridView to Xml file data
this.dataSet = new DataSet();
this.dataSet.ReadXml("data.xml");
DataTableCollection tables = this.dataSet.Tables;
DataView view1 = new DataView(tables[0]);
BindingSource source1 = new BindingSource();
source1.DataSource = view1;
source1.Filter = "type = 'editable'";
gridView.DataSource = source1;
}
private void gridView_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
DataGridView grid = (DataGridView)sender;
DataRow row = ((DataRowView)grid.Rows[e.RowIndex].DataBoundItem).Row;
this.editForm = new EditForm(row);
editForm.ShowDialog();
}
}
这是我的编辑表格:
public partial class EditForm : Form
{
DataRow dataRow;
public EditForm(DataRow dataRow)
{
InitializeComponent();
this.dataRow = dataRow;
textBoxHeadline.DataBindings.Add("Text", this.dataRow, "headline");
}
private void buttonOk_Click(object sender, EventArgs e)
{
// update DataGridView and DataSet?
}
}