C# 如何在运行时c期间重新加载数据网格视图#
每次打开C# 如何在运行时c期间重新加载数据网格视图#,c#,forms,datatable,datagridview,application-restart,C#,Forms,Datatable,Datagridview,Application Restart,每次打开表单时,我都会重新加载数据网格视图的数据 Student_DetailEntities db = new Student_DetailEntities(); private void Form1_Load(object sender, EventArgs e) { db.StudentTables.Load(); studentTableBindingSource.DataSource = db.StudentTables.Local; } 为了确保数据表在
表单时,我都会重新加载数据网格视图的数据
Student_DetailEntities db = new Student_DetailEntities();
private void Form1_Load(object sender, EventArgs e)
{
db.StudentTables.Load();
studentTableBindingSource.DataSource = db.StudentTables.Local;
}
为了确保数据表
在数据网格视图
中是刷新
和显示
,我尝试了以下代码
private void refreshToolStripMenuItem_Click(object sender, EventArgs e)
{
Application.Restart();
Environment.Exit(0);
}
我试着
private void refreshToolStripMenuItem_Click(object sender, EventArgs e)
{
this.Controls.Clear();
this.InitializeComponent();
}
但是数据网格视图
仍然不重新加载
。每次我添加新项目
,我都需要关闭并再次打开表单
,以便在数据网格视图中显示它
您可以使用事件而不是表单。加载
。这样您就可以在每次显示表单时重新加载数据
Student_DetailEntities db = new Student_DetailEntities();
private void Form1_Load(object sender, EventArgs e)
{
Shown += Form1_Shown;
}
private void Form1_Shown(object sender, EventArgs e)
{
db.StudentTables.Load();
studentTableBindingSource.DataSource = db.StudentTables.Local;
}
请参阅表单加载
,表单的详细信息。如图所示
:
@Caius Jard在评论中指出,您可以简单地添加表单。通过“表单设计器-->属性-->事件-->双击显示,然后添加代码”来显示事件处理程序,而不是显示+=Form1\u显示
在我上面提到的Form1\u Load
中。您可以使用事件而不是Form.Load
。这样,您可以在每次显示表单时重新加载数据
Student_DetailEntities db = new Student_DetailEntities();
private void Form1_Load(object sender, EventArgs e)
{
Shown += Form1_Shown;
}
private void Form1_Shown(object sender, EventArgs e)
{
db.StudentTables.Load();
studentTableBindingSource.DataSource = db.StudentTables.Local;
}
请参阅表单加载
,表单的详细信息。如图所示
:
@Caius Jard在评论中指出,您可以简单地添加表单。通过“表单设计器-->属性-->事件-->双击显示,然后添加代码”来显示事件处理程序,而不是显示+=Form1\u显示
在我上面提到的Form1\u Load
中。如何打开Form1
?当我运行程序时,它将打开包含数据网格视图的Form1。要添加新项的另一个表单只有在用户单击Form1上的菜单条时才会打开。您应该将Form1\u Load
的代码放入refreshToolStripMenuItem\u单击
我已经尝试过了。但这只会让它变得多余。另一个菜单条显示在上一个菜单条下。如何打开form1
?当我运行程序时,它将打开包含数据网格视图的form1。要添加新项的另一个表单只有在用户单击Form1上的菜单条时才会打开。您应该将Form1\u Load
的代码放入refreshToolStripMenuItem\u单击
我已经尝试过了。但这只会让它变得多余。另一个菜单条显示在上一个菜单条下。你说得对。我也补充了你的建议。感谢您的贡献。我已经添加了所示的表单
和表单加载
。但当我重新启动应用程序时,它仍然无法重新加载。数据网格视图仍然显示相同的结果。您不需要应用程序。重新启动只需尝试使用即可。您的意思是我使用Form f=new Form();f、 ShowDialog=DialogResult.OK
在刷新工具条带菜单项下单击?这取决于您需要什么,您可以使用ShowDialog作为表单f=new Form();f、 ShowDialog()代码>或者您可以使用var f=new Form();f、 Show()代码>。你是对的。我也补充了你的建议。感谢您的贡献。我已经添加了所示的表单
和表单加载
。但当我重新启动应用程序时,它仍然无法重新加载。数据网格视图仍然显示相同的结果。您不需要应用程序。重新启动只需尝试使用即可。您的意思是我使用Form f=new Form();f、 ShowDialog=DialogResult.OK
在刷新工具条带菜单项下单击?这取决于您需要什么,您可以使用ShowDialog作为表单f=new Form();f、 ShowDialog()代码>或者您可以使用var f=new Form();f、 Show()代码>。