Combo box selection problem

Please support our VB.NET advertiser: Intel Parallel Studio Home
Reply

Join Date: Mar 2005
Posts: 14
Reputation: hippychic43 is an unknown quantity at this point 
Solved Threads: 0
hippychic43 hippychic43 is offline Offline
Newbie Poster

Combo box selection problem

 
0
  #1
Dec 13th, 2005
Hi,

I have a problem when selecting values from some combo boxes.

I have a form with two combo boxes next to each other, they both have the same data source, which is an array. I need to be able to select different values in each combo box.

My problem is that when the user selects a value from either combo box, it sets the other combo box to the same value. So the values in the combo boxes are always the same as each other, I can't make one different from the other unless I type in one of them.

I don't have any events coded for these combo boxes, so it seems to be something with .NET.

I've tried moving the combo boxes away from each other, putting then on different panels and group boxes and nothing has worked.

Any help would be appreciated

Thanks
Reply With Quote Quick reply to this message  
Join Date: Mar 2005
Posts: 14
Reputation: hippychic43 is an unknown quantity at this point 
Solved Threads: 0
hippychic43 hippychic43 is offline Offline
Newbie Poster

Re: Combo box selection problem

 
0
  #2
Dec 13th, 2005
The only way I've found around this problem, is to create two arrays, one for each combo box, that store the same stuff. This is what my code that doesn't work looks like:

Dim dose() As String = {"1/2", "1", "1 & 1/2", "2", "2 & 1/2", "3", "4", "5", "6", "1/2 ml", "1 & 1/2 ml", "2 ml", "2 & 1/2 ml", "3 ml", "4 ml", "5 ml", "10 ml", "15 ml"}
cboMedDose.DataSource = dose
cboPatDose.DataSource = dose
This is the code that works where I create another array:

Dim dose() As String = {"1/2", "1", "1 & 1/2", "2", "2 & 1/2", "3", "4", "5", "6", "1/2 ml", "1 & 1/2 ml", "2 ml", "2 & 1/2 ml", "3 ml", "4 ml", "5 ml", "10 ml", "15 ml"}
cboMedDose.DataSource = dose
Dim somethingElse() As String = {"1/2", "1", "1 & 1/2", "2", "2 & 1/2", "3", "4", "5", "6", "1/2 ml", "1 & 1/2 ml", "2 ml", "2 & 1/2 ml", "3 ml", "4 ml", "5 ml", "10 ml", "15 ml"}
cboPatDose.DataSource = somethingElse
I tried this as well, and it didn't work:

Dim dose() As String = {"1/2", "1", "1 & 1/2", "2", "2 & 1/2", "3", "4", "5", "6", "1/2 ml", "1 & 1/2 ml", "2 ml", "2 & 1/2 ml", "3 ml", "4 ml", "5 ml", "10 ml", "15 ml"}
cboMedDose.DataSource = dose
Dim somethingElse() As String = dose
cboPatDose.DataSource = somethingElse
If anyone could think of a better solution I'd really appreciate it.

Thanks
Cristy
Reply With Quote Quick reply to this message  
Join Date: Jun 2006
Posts: 1
Reputation: JCinSB is an unknown quantity at this point 
Solved Threads: 0
JCinSB JCinSB is offline Offline
Newbie Poster

Re: Combo box selection problem

 
0
  #3
Jun 9th, 2006
Dim SomethingElse() as String = dose

doesn't work because both variables still reference the same array instance. Use the array's Clone method to create the second copy for you.

Dim dose() As String = {"1/2", "1", "1 & 1/2", "2", "2 & 1/2", "3", "4", "5", "6", "1/2 ml", "1 & 1/2 ml", "2 ml", "2 & 1/2 ml", "3 ml", "4 ml", "5 ml", "10 ml", "15 ml"}
Dim SomethingElse() as String = dose.Clone

cboMedDose.DataSource = dose
cboPatDose.DataSource = SomethingElse

Originally Posted by hippychic43
The only way I've found around this problem, is to create two arrays, one for each combo box, that store the same stuff. This is what my code that doesn't work looks like:



This is the code that works where I create another array:



I tried this as well, and it didn't work:



If anyone could think of a better solution I'd really appreciate it.

Thanks
Cristy
Reply With Quote Quick reply to this message  
Join Date: Dec 2002
Posts: 461
Reputation: waynespangler is on a distinguished road 
Solved Threads: 56
waynespangler waynespangler is offline Offline
Posting Pro in Training

Re: Combo box selection problem

 
0
  #4
Jun 10th, 2006
I always feel shorter is better so just add .clone onto your dose
  1. Dim dose() As String = {"1/2", "1", "1 & 1/2", "2", "2 & 1/2", "3", "4", "5", "6", "1/2 ml", "1 & 1/2 ml", "2 ml", "2 & 1/2 ml", "3 ml", "4 ml", "5 ml", "10 ml", "15 ml"}
  2. cboMedDose.DataSource = dose.Clone
  3. cboPatDose.DataSource = dose.Clone
Reply With Quote Quick reply to this message  
Join Date: Oct 2006
Posts: 1
Reputation: outside404 is an unknown quantity at this point 
Solved Threads: 0
outside404 outside404 is offline Offline
Newbie Poster

Re: Combo box selection problem

 
0
  #5
Oct 31st, 2006
Originally Posted by waynespangler View Post
I always feel shorter is better so just add .clone onto your dose
  1. Dim dose() As String = {"1/2", "1", "1 & 1/2", "2", "2 & 1/2", "3", "4", "5", "6", "1/2 ml", "1 & 1/2 ml", "2 ml", "2 & 1/2 ml", "3 ml", "4 ml", "5 ml", "10 ml", "15 ml"}
  2. cboMedDose.DataSource = dose.Clone
  3. cboPatDose.DataSource = dose.Clone
Try disabling databinding on the dose object
eg
Me.BindingContext.Item(dose).SuspendBinding()

where Me is the form. This lets you use the one source for your combo box. Ofcourse you will need to manually make any changes in response the SelectedValue/ Index chnage events on the combo boxes
Reply With Quote Quick reply to this message  
Join Date: Dec 2002
Posts: 461
Reputation: waynespangler is on a distinguished road 
Solved Threads: 56
waynespangler waynespangler is offline Offline
Posting Pro in Training

Re: Combo box selection problem

 
0
  #6
Oct 31st, 2006
never mind.
Last edited by waynespangler; Oct 31st, 2006 at 10:41 pm.
Reply With Quote Quick reply to this message  
Reply

This thread is more than three months old.
Perhaps start a new thread instead?
Message:



Similar Threads
Other Threads in the VB.NET Forum
Thread Tools Search this Thread



About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC