2012-07-13 99 views
-1

我用CSHARP +框架4 + EF + SQL 2008和验证码:绑定列表<T>到DataGridView的

DataGridView1.DataSource = (from PS in PurchaserSpecials.GetList() 
            select new 
            { 
             PS.PurchaserSerial, 
             PS.Purchaser.Address, 
             PS.Purchaser.Fax, 
             PS.Purchaser.NumberEconomic 
            }).ToList(); 

PurchaserSpecials:

public static BindingList<PurchaserSpecial> GetList() 
    { 
     Entity conn = new Entity(); 
     BindingList<PurchaserSpecial> lst = new BindingList<PurchaserSpecial>(conn.PurchaserSpecials.ToList()); 
     return lst; 
    } 

第一时间显示在DataGridView1。但是在将数据插入到sql之后。我需要使用下面的代码:

DataGridView1.DataSource = (from PS in PurchaserSpecials.GetList() 
            select new 
            { 
             PS.PurchaserSerial, 
             PS.Purchaser.Address, 
             PS.Purchaser.Fax, 
             PS.Purchaser.NumberEconomic 
            }).ToList(); 

我想自动更新的DataGridView

+1

And ...?你想自动更新? – Kek 2012-07-13 08:31:38

+0

您的第一个和第二个查询是相同的。我错过了什么吗? – leppie 2012-07-13 08:33:35

+0

我不认为这是可能的。我能想到的唯一方法是轮询线程每隔n秒执行一次请求并调用上面的代码...插入可能来自另一台机器上运行的另一个进程?也许在插入时使用触发器? – Kek 2012-07-13 08:35:48

回答

0

你“......使用点击按钮插入数据到SQL”,对不对?现在在同一个按钮中点击处理程序在插入数据之后再次设置DataGridViewDataSource。希望这会工作。