0

我有以下代码,当我从一个单独的表单向我的表中添加新记录时,它要做的是更新,此时我正在获取所有表数据,但是如果我添加新数据,它在这里不可见,但是保存在表中,我必须关闭程序并再次运行它才能使保存的数据在 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);

        }
    }
}
4

1 回答 1

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;
}

然后,当您创建 frmBooking 表单时,请执行以下操作:

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

因此,在 frmBooking 中插入新记录后,调用:

myBookingsFrm.UpdateData();
于 2013-03-27T16:50:49.007 回答