2014-02-16 91 views
0

我正在使用VB.net的窗体应用程序。我已经填充了Datagridview1(dataset1.existingtable是数据表)。现在我希望从其数据表的一列中获取不同的值,然后填充另一个Datagridview2(dataset2.uniquerecords是数据表)。填充vb.net中的现有数据表后刷新datagridview

问题:无法使用设计模式刷新Datagridview2中的数据。但是,我能够在运行时动态创建数据表时刷新数据。 在我的表单完全加载后,下面的子表单被调用。

下面的代码不能正常工作

Private Sub loaddistinctrecords() 

    uniquerecords = existingtable.DefaultView.ToTable(True, "column_name")  
    Datagridview2.Refresh() 
End Sub 

下面的代码工作

Private Sub loaddistinctrecords() 

    Dim newuniquerecords As New DataTable() 
    newuniquerecords = existingtable.DefaultView.ToTable(True, "column_name") 
    Datagridview2.DataSource = newuniquerecords.DefaultView 

End Sub 

回答

0

以及它看起来像一个不能直接分配一个数据表到另一个数据表,并期望在DataGridView到如果自动更新datatable是从设计模式创建的。

可以做的只是清除现有记录,然后合并源数据表中的记录。

Private Sub loaddistinctrecords() 

    uniquerecords.Clear() 
    uniquerecords.Merge(existingtable.DefaultView.ToTable(True, "table_name")) 

End Sub 
相关问题