2015-12-20 17 views
0

我有以下问题的信息的更新:的DataGridView不显示我已经存储在一个ArrayList

当我点击按钮“结束”我秀的形式是“订单历史记录”。第一次加载DataGridView时,它显示了存储在数组列表“购买产品”(tabDeProduitsAchete)中的所有元素。

但是,如果我回去,并购买另一种产品,并成功地将其添加到阵列表“购买产品”(tabDeProduitsAchete),我再次去“订购历史”DataGridView只显示旧的历史,它不刷新或更新购买的新产品。这是我的代码。我能做什么 ?我试过刷新()但它没有工作

Private Sub finDeMesAchats_Load(sender As Object, e As EventArgs) Handles MyBase.Load 
    DataGridView1.DataSource = tabDeProduitsAchete 
End Sub 


Private Sub butRetour_Click(sender As Object, e As EventArgs) Handles butRetour.Click 
    Me.Hide() 
    formAchatProduit.Show() 
End Sub 
+0

arraylist中的属性是否实现了inotifypropertychanged接口? https://msdn.microsoft.com/library/ms229614(v=vs.100).aspx –

+0

绑定在Windows窗体应用程序中,您应该使用绑定列表而不是数组列表来保存您的数据https:// msdn。 microsoft.com/en-us/library/ms132679(v=vs.110).aspx –

回答

0

纳塔利娅,你为什么不在LOAD事件中调用REBIND?是这样的:

DataGridView1.DataSource = tabDeProduitsAchete 
    DataGridView1.rebind 

UPDATE:

您也可以尝试这样的:

Dim source = new BindingSource() 
    source.Datasource = TabDeProduitAchete 
    DatagridView1.datasource = source 
    DatagridView1.rebind <<< optional 

请试着回答我,如果它已经解决了你的问题。 亲切的问候。

+0

谢谢你的建议!我会尝试! – Natalia

+0

我不知道为什么......但它没有工作....反正谢谢你! – Natalia

相关问题