首先,我会将 移动Fill
到一个单独的函数:
public void LoadData()
{
this.usersTableAdapter.Fill(this.workOrdersDataSet.users);
}
然后,当您执行加载事件时,您将调用该函数:
private void UserList_Load(object sender, EventArgs e)
{
LoadData();
}
如果您有另一个对数据执行更改的表单,您可以在另一个事件中调用此函数,类似于此。我DialogResult
在我的代码中使用:
private void OpenOtherForm()
{
DialogResult openForm = new OtherForm().ShowDialog();
if(openForm == DialogResult.OK)
LoadData();
}
在更新过程完成后,在另一个表单的代码中,包含一行代码来告诉您的主表单进行更新:
private void PerformUpdate()
{
try
{
// your update code goes here
DialogResult = DialogResult.OK; // this is the line that tells your other form to refresh
}
catch (Exception ex)
{
DialogResult = DialogResult.Abort;
}
}
使用DialogResult
then,告诉您的主窗体仅在实际发生更新时触发数据刷新。