2017-02-28 46 views
1

我正在使用DataGrid控件处理WinForms应用程序。我已经使用BindingSource作为数据源,并且我已经初始化了BindingSource.DataSourceForm_Shown事件。父表正确加载但子表未加载。 如果我在Form_Load事件中初始化BindingSource.DataSource,它工作正常,没有问题。为什么在使用Form_Shown事件时数据未加载?

为什么这种差异发生在Form_Shown和Form_Load事件中使用BindingSource?

请让我知道原因。 '

Form1.Designer.vb 
Me.DataGridView.DataSource = Me.BindingSource1 

Form1.vb的

Private Sub Form1_Shown(sender As Object, e As EventArgs) Handles Me.Shown 
    ''Does not work 
    BindingSource1.DataSource = ParentList.FetchMaintenance 
    ''Does work 
    DataGridView.DataSource = ParentList.FetchMaintenance 
End Sub 

回答

0

根据MSDN:

的Form_Load或负载的事件的形式将显示 第一次之前发生。

虽然

所示的事件只提出的第一个时间显示的形式。

也许是因为表单没有加载你的绑定源,这就是为什么它没有加载显示事件。因为没有可以显示的东西。

相关问题