Web Listing 5: Handling PositionChanged Events to Populate Child Rowsets Private Sub GetCustomersByStateBindingSource_position( _ ByVal sender As Object, ByVal e As System.EventArgs) _ Handles GetCustomersByStateBindingSource.PositionChanged Dim drvCust As DataRowView = _ GetCustomersByStateBindingSource.Current If drvCust Is Nothing Then Else Dim intCID As Integer = CInt(drvCust("CustID")) ' Test to see if CustID has changed If Not intCID = intCustID Then intCustID = intCID 'Returns 0 until populated Me.AddressesTableAdapter.Fill( _ Me.CustomerDataSet.Addresses, intCustID) Me.GetOrdersByCustomerTableAdapter.Fill( _ Me.CustomerDataSet.GetOrdersByCustomer, intCustID) End If End If Debug.Print( _ String.Format("Current Customer changed to: {0}", intCustID)) End Sub Private Sub GetOrdersByCustomerBindingSource_PositionChanged( _ ByVal sender As Object, ByVal e As System.EventArgs) _ Handles GetOrdersByCustomerBindingSource.PositionChanged Dim drvOrder As DataRowView = _ GetOrdersByCustomerBindingSource.Current If drvOrder Is Nothing Then Else Dim intOID As Integer = drvOrder("OrderID") If Not intOrderID = intOID Then 'Returns 0 until populated intOrderID = intOID 'Returns 0 until populated Me.GetItemsByCustomerOrderTableAdapter.Fill( _ Me.CustomerDataSet.GetItemsByCustomerOrder, _ intOrderID, intCustID) End If End If Debug.Print( _ String.Format("Current Order changed to: {0}", intOrderID)) End Sub