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
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
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
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.
Re: Combo Box triggers another comboxbox display
Thanks - Changed cmdMercBenzModels to cmbMercBenzModels
Still I receive the same error at runtime
Re: Combo Box triggers another comboxbox display
Please post your revised code.
Re: Combo Box triggers another comboxbox display
Quote:
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
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
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
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
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
Re: Combo Box triggers another comboxbox display
Quote:
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
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'
Re: Combo Box triggers another comboxbox display
Use this instead ..
If CmbTruckTyp.SelectedIndex > -1 Then
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
Re: Combo Box triggers another comboxbox display
Try ..
Select Case Me.CmbTruckTyp.SelectedText
Re: Combo Box triggers another comboxbox display
Quote:
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.
Quote:
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...
Re: Combo Box triggers another comboxbox display
Quote:
SelectedText is only for the editable portion of a combobox, not for the items in the list.
It's been one of those days! :eek: