Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 254
  • Last Modified:

Fill Dataset from another form

Hi Experts,

VS 2008,SQL 2005.

I have a form with a split container. The first panel has a tree control.On the 2nd panel I fill with a form at run time , If the first node is  clicked I load a customer form in the panel. If the 2nd node is clicked I load a Job form.I also have it check to see if the form that is needed on the 2nd panel is already loaded,if so I want to just update the data. I am trying to refill the dataset on the form in the 2nd panel but the following code id not working.

frmSubCustomer.FillCustomerDetail(SelectedCustomerID)    This is a sub on the frmSubCustomer


this is the code:

    Private Sub FillsubCustomerForm()
        Dim SubFrm As New frmSubCustomer

        SelectedCustomerID = Me.TreeCustomer.SelectedNode.Tag

        If Me.SplitContainer1.Panel2.Controls.Count > 0 Then
            If Me.SplitContainer1.Panel2.Controls(0).Name = "frmSubCustomer" Then
                frmSubCustomer.FillCustomerDetail(SelectedCustomerID)


            Else

                Me.SplitContainer1.Panel2.Controls.Clear()
                With SubFrm

                    .CurrentCustomerID = SelectedCustomerID
                    .TopLevel = False
                    .Dock = DockStyle.Fill
                    .WindowState = FormWindowState.Maximized
                    .Parent = Me
                    Me.SplitContainer1.Panel2.Controls.Add(SubFrm)
                    .Show()

                End With

            End If


Any help would be great. If you can think of a better way of doing this I wold like to see it as I am just starting to develop this App

Thank You
John
0
DjJohnny
Asked:
DjJohnny
1 Solution
 
appariCommented:
try this

 Private Sub FillsubCustomerForm()
        Dim SubFrm As object

        SelectedCustomerID = Me.TreeCustomer.SelectedNode.Tag

        If Me.SplitContainer1.Panel2.Controls.Count > 0 Then
            If Me.SplitContainer1.Panel2.Controls(0).Name = "frmSubCustomer" Then
            SubFrm = Me.SplitContainer1.Panel2.Controls(0)
                ctype(SubFrm, frmSubCustomer).FillCustomerDetail(SelectedCustomerID)


            Else

                Me.SplitContainer1.Panel2.Controls.Clear()
                With SubFrm

                    .CurrentCustomerID = SelectedCustomerID
                    .TopLevel = False
                    .Dock = DockStyle.Fill
                    .WindowState = FormWindowState.Maximized
                    .Parent = Me
                    Me.SplitContainer1.Panel2.Controls.Add(SubFrm)
                    .Show()

                End With

            End If

0
 
philipjonathanCommented:
How far have you got? Are you handling the Tree's clicked event? You can handle the Tree's clicked event. If a click is detected, check if it's the 1st node or the 2nd one. Then check if the associated form is already loaded. If so, just refresh the data
0
 
DjJohnnyAuthor Commented:
Thank You  appari and philipjonathan,

appari code worked. I see now that I need to create an object that I set as the form in the panel2. I was just trying to get to it directly.

John
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now