Ναι κατάλαβα που κολλάς, δικό μου λάθος συγνώμη.
O Constructor τις φόρμας αναζήτησης έχει σαν παράμετρο μία φόρμα η οποία είναι γενική, και οι γενικές φόρμες δεν έχουν τις ρουτίνες που φτιάχνουμε εμείς στις φόρμες μας. Οπότε θα πρέπει να κάνουμε μερικές αλλαγές για να παίζει σωστά ο κώδικάς σου.
Αρχικά θα μπορούσαμε να κάνουμε το εξής
Dim myCallingForm as Form=Nothing
Public Sub New(CallingForm As Form)
InitializeComponent
Select Case TypeOf CallngForm
Case CustomersForm
myCallingForm=CType(CallingForm,CustomerForm)
End Case
End Sub
Οπότε βάζουμε όσα Case όσες είναι οι φόρμες μας οι οποίες καλούν την φόρμα αναζήτησης. Αυτό όμως καταργεί το πλεονέκτημά μας, όπου αν προσθέσουμε μία νέα φόρμα θα πρέπει να έρθουμε στην φόρμα αναζήτησης και να προσθέσουμε την νέα αυτήν φόρμα. οπότε θα πρέπει να διαλέξουμε μία διαφορετικη προσέγγιση.
Φυσικά και πάλι σου ξαναλέω ότι σχεδιατικά θα ακολουθούσα μία διαφορετική προσέγγιση άλλά επειδή δεν θέλω να αλλάξεις πολύ των κώδικά σου θα το φέρω όσο πιο πολύ στα δικά σου δεδομένα.
Σβήσε την παράμετρο από τον Constructor της φόρμας αναζήτησης και δημιούργησε ένα event στην φόρμα αυτήν...
Public Event Customer_Selected As EventHandler
Όταν επιλέξεις πελάτη και πριν κλείσεις την φόρμα θα γράψεις.
Dim e as new EventArgs.
RaiseEvent Customer_Selected(Me,e)
Στο σημείο αυτό θα σε παρακαλούσα να διαβάσεις στο MSDN πως μπορείς να περάσεις μέσα από το EventArgs τιμές, στην περίπτωσή μας τον κωδικό του πελάτη.
Στις φόρμες που καλούν την φόρμα αναζήτησης θα δηλώσεις επάνω
Dim WithEvents mySearchForm as SearchForm=nothing
Αυτό θα σου δώσει την δυνατότητα να μπορείς να κάνει subscribe στο event που βγάζει η SearchForm. Έτσι θα πάρεις μέσα από το Event την τιμή του κωδικού του πελάτη. Η λύση αυτή είναι πιο δύσκολη από την προηγούμενη αλλά έχει ακόμα μεγαλύτερα πλεονεκτήματα. Δυστυχώς λόγω τις ώρας δεν μπορώ να σου δώσω περισσότερες πληροφορίες αλλά θα μπορούσα από εβδομάδα αν εξακολουθείς να έχει πρόβλημα να σου στείλω ένα απλό παράδειγμα με πλήρες κώδικα.
ΥΣΤ: Ελπίζω να γνωρίζεις πως να κάνεις Subscribe σε events αλλοιώς θα είναι δύσκολο για εσένα να κάνεις το παράδειγμα που σου ανέφερα.