|
-
Aug 30th, 2012, 09:00 AM
#1
Thread Starter
Frenzied Member
Combo Box triggers another comboxbox display
Hi,
On my form I have 3 combo boxes,
CmbTruckTyp (has dropdownlist of Daf & Mercedes Benz)
cmbDafModels (A, B , C)
cmdMercBenzModels (D, E, F)
On Form Load (by default)
Select Truck Type = CmbTruckTyp (Daf is at the top) Select Model = cmbDafModels (set to visible at form load and cmdMercBenzModels set to false)
Now when a user from the dropdownlist on CmbTruckTyp select Mercedes Benz I want to hide the contents of cmbDafModels and display cmdMercBenzModels instead.
How can I achieve that? Is it the right approach to do it? I might have other 3 combo boxes to add...
Tried;
Code:
Private Sub CmbTruckTyp_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CmbTruckTyp.SelectedIndexChanged
If Me.CmbTruckTyp.Text = "Mercedes-Benz" Then
cmdMercBenzModels.Visible = True
Else
cmbDafModels.Visible = False
End If
If Me.CmbTruckTyp.Text = "Daf" Then
cmbDafModels.Visible = True
Else
cmdMercBenzModels.Visible = False
End If
End Sub
No errors, but doesnt work!!
When I Select Mercendez Benz from the dropdownlist, cmbDafModels disappears but cmdMercBenzModels is not visible.
When I click Daf again cmbDafModels doesnt reappear.
Many thanks
Last edited by dr223; Aug 30th, 2012 at 09:14 AM.
-
Aug 30th, 2012, 02:36 PM
#2
Re: Combo Box triggers another comboxbox display
vb.net Code:
Private Sub CmbTruckTyp_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CmbTruckTyp.SelectedIndexChanged
If Me.CmbTruckTyp.Text = "Mercedes-Benz" Then '.Text is anything typed in so it's "" here and goes to Else
cmdMercBenzModels.Visible = True
Else
cmbDafModels.Visible = False 'Daf box disappears
End If
If Me.CmbTruckTyp.Text = "Daf" Then '.Text is still "" so to Else
cmbDafModels.Visible = True
Else
cmdMercBenzModels.Visible = False 'Merc box disappears
End If
End Sub
vb.net Code:
Private Sub CmbTruckTyp_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CmbTruckTyp.SelectedIndexChanged
If Me.CmbTruckTyp.SelectedItem = "Mercedes-Benz" Then
cmdMercBenzModels.Visible = True
cmbDafModels.Visible = False
Else
cmbDafModels.Visible = True
cmdMercBenzModels.Visible = False
End If
End Sub
-
Aug 31st, 2012, 04:30 AM
#3
Thread Starter
Frenzied Member
Re: Combo Box triggers another comboxbox display
When I used the second code I received the error;
InvalidCastException was unhandled
Overload resolution failed because no Public '=' can be called with these arguments:
'Public Shared Operator =(a As String, b As String) As Boolean':
Thanks
-
Aug 31st, 2012, 07:19 AM
#4
Re: Combo Box triggers another comboxbox display
It works without any problems on my machine, and that error doesn't relate to anything in the code as I have it. I'm assuming that cmdMercBenzModels is just a typo you made in naming the box and it's therefore valid. Otherwise I can't see anything that could be problematic.
-
Aug 31st, 2012, 08:12 AM
#5
Thread Starter
Frenzied Member
Re: Combo Box triggers another comboxbox display
Thanks - Changed cmdMercBenzModels to cmbMercBenzModels
Still I receive the same error at runtime
Last edited by dr223; Aug 31st, 2012 at 08:54 AM.
-
Aug 31st, 2012, 08:30 AM
#6
Re: Combo Box triggers another comboxbox display
Please post your revised code.
-
Aug 31st, 2012, 08:35 AM
#7
Re: Combo Box triggers another comboxbox display
 Originally Posted by dr223
When I used the second code I received the error;
InvalidCastException was unhandled
Overload resolution failed because no Public '=' can be called with these arguments:
'Public Shared Operator =(a As String, b As String) As Boolean':
Thanks
This will work with Option Strict Off but not with Option Strict On
Code:
If Me.CmbTruckTyp.SelectedItem = "Mercedes-Benz" Then
This is the correct way for Option Strict On
Code:
If Me.CmbTruckTyp.SelectedItem.ToString = "Mercedes-Benz" Then
-
Aug 31st, 2012, 08:59 AM
#8
Thread Starter
Frenzied Member
Re: Combo Box triggers another comboxbox display
Ok - Tried
Code:
If Me.CmbTruckTyp.SelectedItem.ToString = "Mercedes-Benz" Then
When I select any other value not Mercedez-Benz - cmdMercBenzModels disappears and I receive an error as
NullReferenceException was unhandled
Object reference not set to an instance of an object.
Code:
If Me.CmbTruckTyp.SelectedItem.ToString = "Mercedes-Benz" Then
cmbMercBenzModels.Visible = True
cmbDafModels.Visible = False
Else
cmbDafModels.Visible = True
cmbMercBenzModels.Visible = False
End If
-
Sep 2nd, 2012, 08:35 AM
#9
Thread Starter
Frenzied Member
Re: Combo Box triggers another comboxbox display
I also set Option Strict ON and tried both codes I still have the same error - any help please
-
Sep 2nd, 2012, 10:06 AM
#10
Lively Member
Re: Combo Box triggers another comboxbox display
Try this?
Code:
Private Sub CmbTruckTyp_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CmbTruckTyp.SelectedIndexChanged
Select Case Me.CmbTruckTyp.SelectedItem.ToString
Case "Mercedes-Benz"
cmdMercBenzModels.Visible = True
cmbDafModels.Visible = False
Case "Daf"
cmdMercBenzModels.Visible = False
cmbDafModels.Visible = True
Case Else
cmdMercBenzModels.Visible = False
cmbDafModels.Visible = False
End Select
End Sub
Last edited by MotoX646; Sep 2nd, 2012 at 01:44 PM.
-
Sep 3rd, 2012, 06:43 AM
#11
Thread Starter
Frenzied Member
Re: Combo Box triggers another comboxbox display
Ok Tried this ;
Code:
Select Case Me.CmbTruckTyp.SelectedItem.ToString
Case "Mercedes-Benz"
cmdMercBenzModels.Visible = True
cmbDafModels.Visible = False
Case "Daf"
cmdMercBenzModels.Visible = False
cmbDafModels.Visible = True
Case Else
cmdMercBenzModels.Visible = False
cmbDafModels.Visible = False
End Select
At run time, I have the error -
NullReferenceException was unhandled by user code
Object Reference not set to an instance of an object
This line is higlighted in yellow;
Code:
Select Case Me.CmbTruckTyp.SelectedItem.ToString
ANy assistance please
-
Sep 3rd, 2012, 07:31 AM
#12
Lively Member
Re: Combo Box triggers another comboxbox display
 Originally Posted by dr223
NullReferenceException was unhandled by user code
Object Reference not set to an instance of an object
This line is higlighted in yellow;
Code:
Select Case Me.CmbTruckTyp.SelectedItem.ToString
You are getting that error because nothing is selected in the combobox. Your combobox's "selecteditem" is null. Your combobox must select something... By any chance do you have "CmbTruckTyp.SelectedItem = Nothing" anywhere in your code?
Try this:
Code:
If Not Me.CmbTruckTyp.SelectedItem = Nothing Then
Select Case Me.CmbTruckTyp.SelectedItem.ToString
Case "Mercedes-Benz"
cmdMercBenzModels.Visible = True
cmbDafModels.Visible = False
Case "Daf"
cmdMercBenzModels.Visible = False
cmbDafModels.Visible = True
Case Else
cmdMercBenzModels.Visible = False
cmbDafModels.Visible = False
End Select
End If
Last edited by MotoX646; Sep 3rd, 2012 at 07:38 AM.
-
Sep 3rd, 2012, 08:14 AM
#13
Thread Starter
Frenzied Member
Re: Combo Box triggers another comboxbox display
Ok Added;
Code:
If Not Me.CmbTruckTyp.SelectedItem = Nothing Then
At run time I receive the error;
InvalidCastException was unhandled
Operator '=' is not defined for type 'DatarowView' and 'Nothing'
-
Sep 3rd, 2012, 11:52 AM
#14
Re: Combo Box triggers another comboxbox display
Use this instead ..
If CmbTruckTyp.SelectedIndex > -1 Then
-
Sep 4th, 2012, 04:20 AM
#15
Thread Starter
Frenzied Member
Re: Combo Box triggers another comboxbox display
Code:
If CmbTruckTyp.SelectedIndex > -1 Then
Select Case Me.CmbTruckTyp.SelectedItem.ToString
Case "MERCEDES-BENZ"
cmbMercBenzModels.Visible = True
cmbDafModels.Visible = False
Case "DAF"
cmbMercBenzModels.Visible = False
cmbDafModels.Visible = True
Case Else
cmbMercBenzModels.Visible = False
cmbDafModels.Visible = False
End Select
At runtime, no errors, however, when I select DAF, cmbDafModels.Visible is not set True , same applies when I select MERCEDES-BENZ, cmbMercBenzModels.Visible is not set to True.
Why?
Any help -- thanks
Last edited by dr223; Sep 4th, 2012 at 04:26 AM.
-
Sep 4th, 2012, 12:18 PM
#16
Re: Combo Box triggers another comboxbox display
Try ..
Select Case Me.CmbTruckTyp.SelectedText
As the 6-dimensional mathematics professor said to the brain surgeon, "It ain't Rocket Science!"
Reviews: "dunfiddlin likes his DataTables" - jmcilhinney
Please be aware that whilst I will read private messages (one day!) I am unlikely to reply to anything that does not contain offers of cash, fame or marriage!
-
Sep 4th, 2012, 12:34 PM
#17
Lively Member
Re: Combo Box triggers another comboxbox display
 Originally Posted by dunfiddlin
Select Case Me.CmbTruckTyp.SelectedText
SelectedText is only for the editable portion of a combobox, not for the items in the list.
 Originally Posted by dr223
Code:
If CmbTruckTyp.SelectedIndex > -1 Then
Select Case Me.CmbTruckTyp.SelectedItem.ToString
Case "MERCEDES-BENZ"
cmbMercBenzModels.Visible = True
cmbDafModels.Visible = False
Case "DAF"
cmbMercBenzModels.Visible = False
cmbDafModels.Visible = True
Case Else
cmbMercBenzModels.Visible = False
cmbDafModels.Visible = False
End Select
At runtime, no errors, however, when I select DAF, cmbDafModels.Visible is not set True , same applies when I select MERCEDES-BENZ, cmbMercBenzModels.Visible is not set to True.
Why?
The text is CASE SENSITIVE. If your combobox has "Mercedes-Benz" then Case "MERCEDES-BENZ" will not work. They have to be the same...
-
Sep 4th, 2012, 01:40 PM
#18
Re: Combo Box triggers another comboxbox display
SelectedText is only for the editable portion of a combobox, not for the items in the list.
It's been one of those days!
As the 6-dimensional mathematics professor said to the brain surgeon, "It ain't Rocket Science!"
Reviews: "dunfiddlin likes his DataTables" - jmcilhinney
Please be aware that whilst I will read private messages (one day!) I am unlikely to reply to anything that does not contain offers of cash, fame or marriage!
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|