我有一个小问题,我正在创建一个简单的搜索应用程序,它有一个TEXT框和一些组合框和单选按钮和一个搜索按钮。 单选按钮名称“视频”,“音频”,“图片”等。 当选择视频的无线电按钮时,组合框会出现“YouTube”,“Metacafe”等选项 我希望当我点击视频组合框中的“Metecafe”项目时,会出现另一个组合框,其中包含“娱乐”,“如何”,“+ 18”等项目(视频搜索类别)。 所以“如何在COMBOBOX项目的帮助下显示/隐藏其他COBOBOX” 希望你能理解我的问题。 screen shoot 我不知道是不是有可能因为我是VB的初学者 我的英语不太好,请看下面的代码:)
if combobox1.SelectedItem = "PAKISTAN" Then
combobox2.Visible = True
End if
if combobox1.SelectedItem = "INDIA" Then
combobox3.visible = true
combobox2.visible = false
End if
显然这段代码是错误的,这是我想要做的一个例子 感谢所有提前..
注意: 我试过这个代码,但它不起作用..
if ComboBox1.Items(ComboBox1.SelectedIndex).ToString() = "PAKISTAN" Then
ComboBox2.Visible = True
End if
抱歉拼写和语法错误:(
答案 0 :(得分:3)
尝试使用SelectedItem这样的属性
Private Sub ComboBox1_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
If ComboBox1.SelectedItem.ToString = "PAKISTAN" Then
ComboBox2.Visible = True
End If
End Sub
由于您要查看多个国家/地区,因此您可以使用此类Select Case声明
Private Sub ComboBox1_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
Select Case ComboBox1.SelectedItem.ToString
Case "PAKISTAN"
ComboBox2.Visible = True
ComboBox3.Visible = False
Case "INDIA"
ComboBox3.Visible = True
ComboBox2.Visible = False
Case Else
ComboBox2.Visible = False
ComboBox3.Visible = False
End Select
End Sub
答案 1 :(得分:1)
这里有两件事很重要:
(a)您正在使用/检测/组合框已更改的事件,以及
(b)您用于检测所选内容的代码。
我没有对此进行测试,而且我来自C#/ VB6背景,所以如果这不是100%正确,请耐心等待,但我相信使用以下内容应该有效:
在ComboBox1的SelectedIndexChanged事件中,插入上面的代码,EXCEPT ..更改实例,如
combobox1.SelectedItem = "PAKISTAN"
到
ComboBox1.Text = "PAKISTAN"
SelectedItem属性输出所选的项目对象本身,这是一个无法显示的变量类型..而不是当前所选项目的/ text /。还有其他方法可以访问与该项关联的文本,但ComboBox1.Text是最简单的方法。 ComboBox1.SelectedItem.ToString()也可以。
答案 2 :(得分:0)
If ComboBox1.Items(ComboBox1.SelectedIndex).ToString() = "PAKISTAN" Then
ComboBox2.Visible = True
End If
答案 3 :(得分:0)
顺便说一句,这是一个Web客户端还是窗口客户端?
假设您正在实现Web客户端应用程序并且条件逻辑很简单,您可能需要通过指定事件并将reload的属性设置为启用来触发可在标记中实现的页面重新加载。我在阅读你的帖子时的初衷是你的GUI可能不会刷新或重新加载,除非你的意图是不重新加载页面或刷新GUI然后这应该用javascript处理。
我希望我正确地解释这个问题,希望这会让你对如何解决这个问题有所了解。