2013-05-01 44 views
0

我使用DataGridView創建表單。 該數據網格使用綁定:綁定兩個綁定資源,它們與ORM相關聯

 clientBindingSource.DataSource = from asd in db.Clients select new MainGridHelper() 
      { 
       Client = asd 
      }; 

MainGridHelper有一些屬性和有用的方法。但後來我從另一種形式添加新的客戶端:

 _client = new Client(); 
     clientBindingSource.DataSource = _client; 
     //... 
     DBContext.Clients.InsertOnSubmit(_client); 
     DBContext.SubmitChanges(); 

所以,我使用DataGridView.Refresh()後添加客戶端。 我有第一個BindingSource新的空客戶端,但增加了行(空單元格)。 我不想合併MainGridHelper和客戶端類。 如何解決這個問題,而不需要新的LINQ查詢?

對不起,如果這是一個簡單的問題。

+0

爲主要形式第一的BindingSource,第二兒童形式。 ;) 因此,clientBindingSource.Insert(新的MainGridHelper {Client = _returned})正常工作 – Tres 2013-05-01 19:24:54

+0

你想要發生什麼,以及它與現在發生的事情有什麼不同? – user1 2013-05-01 19:27:55

+0

我想新的客戶端添加新的實例後,正確的新行,現在我有新的行與空單元格。如果我重新運行應用程序,我有所有的行更正。 – Tres 2013-05-01 19:32:26

回答

1

如果我正確理解你的問題(這是一個很大的如果),只需調整原來的LINQ查詢,以排除空值:

clientBindingSource.DataSource = from asd in db.Clients 
           where asd != null 
           select new MainGridHelper() 
     { 
      Client = asd 
     };