2013-03-27 77 views
0

我有下面的代码,它想要做什么是更新时,我从一个单独的表单添加新的记录到我的表,现在我得到所有的表数据,但如果我添加新的数据,它是在这里不可见,但保存在表格中,我必须关闭该程序并再次运行,才能使保存的数据在datagridview中可见。我的问题是我如何更新datagridview,以便表格信息始终在那里。 代码中,我有如下:更新datagridview

using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using System.Windows.Forms; 

namespace project 
{ 
    public partial class frmViewBookings : Form 
    { 
     public frmViewBookings() 
     { 
      InitializeComponent(); 
     } 

     private void btnClose_Click(object sender, EventArgs e) 
     { 
      Form3 mainpage = new Form3(); 
      mainpage.Show(); 
      this.Close(); 
     } 

     private void frmViewBookings_Load(object sender, EventArgs e) 
     { 
      // TODO: This line of code loads data into the 'usersDataSet1.Booking' table. You can move, or remove it, as needed. 
      this.bookingTableAdapter.Fill(this.usersDataSet1.Booking); 

     } 
    } 
} 
+1

你叫'.DataBind()'更新后? – DGibbs 2013-03-27 16:52:19

+0

“绑定看起来像”是什么?你可以显示你在哪里声明'usersDataSet1'看起来像是在这里丢失了一些代码 – MethodMan 2013-03-27 16:52:27

+0

嗯......我想我很困惑,@DJKRAZE-我只是简单地从工具箱中添加了datagridview,然后简单地选择了数据源。这是我所做的 – bandaa 2013-03-27 16:57:38

回答

0

添加/编辑您在frmViewBookings现有的方法:

private void frmViewBookings_Load(object sender, EventArgs e) 
{ 
    // TODO: This line of code loads data into the 'usersDataSet1.Booking' table. You can move, or remove it, as needed. 
    UpdateData(); 

} 

public void UpdateData() 
{ 
    this.bookingTableAdapter.Fill(this.usersDataSet1.Booking); 
} 

然后调用UpdateData()从您的其他形式的

在你的其他形式,加属于第一种形式的财产:

public partial class frmBooking : Form 
{ 
    public frmViewBookings myBookingsFrm = null; 
} 

Th当您创建frmBooking形式的连接,这样做:

frmBooking frmNewBookingFrm = new frmBooking(); 
frmNewBookingFrm.myBookingsFrm = this;//or whatever reference to the first frmViewBookings is 

所以你插入内frmBooking新记录后,拨打:

myBookingsFrm.UpdateData(); 
+0

谢谢,我如何在我的frmBooking窗体中调用“updateData()”? – bandaa 2013-03-27 16:54:13

+0

我有两种形式,1是上面的一个,另一个是frmBooking,我在那里做实际的预订....我想在frmBooking上做预订,然后在datagridview(上面的表单)中更新数据数据是在frmBooking上预订后存储的,但不会在datagridview上显示,除非我关闭程序并再次运行它。这是我需要帮助的。谢谢 – bandaa 2013-03-27 17:16:48

+0

这正是我提供的代码所做的。如果您提供frmBooking的代码,我可以为您编辑它。 – Rob 2013-03-27 17:18:11