我有一个包含5个不同选项的组合框,"一个玩家","两个玩家","三个玩家"我的要求是当用户从组合框中选择某些东西时,它们的等效文本框应该变得可见,即如果"一个玩家"选中后,应出现一个文本框,以便用户输入值。两个和三个相同。请建议。
答案 0 :(得分:1)
Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
If ComboBox1.Text.Trim.Contains("Player 1") = True Then
TextBox1.Visible = True
TextBox2.Visible = False
TextBox3.Visible = False
ElseIf ComboBox1.Text.Trim.Contains("Player 2") = True Then
TextBox1.Visible = True
TextBox2.Visible = True
TextBox3.Visible = False
ElseIf ComboBox1.Text.Trim.Contains("Player 3") = True Then
TextBox1.Visible = True
TextBox2.Visible = True
TextBox3.Visible = True
End If
End Sub
答案 1 :(得分:0)
只需将jquery(https://api.jquery.com/change/)中可用的.change()函数与css可见性(visibility:hidden / visible; check http://www.w3schools.com/cssref/pr_class_visibility.asp)
组合在一起$( "#myComboBox" ).change(function() {
//do what you have to do here
});
答案 2 :(得分:0)
尝试这样的事情:
Sub cbC(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged
Select Case ComboBox1.SelectedIndex
Case 0
TextBox1.Visible = False
TextBox2.Visible = False
Case 1
TextBox1.Visible = True
TextBox2.Visible = False
Case 2
TextBox1.Visible = True
TextBox2.Visible = True
End Select
End Sub
或者根据更适合您需求的内容:
Sub cbC(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged
TextBox1.Visible = (ComboBox1.SelectedIndex = 0)
TextBox1.Visible = (ComboBox1.SelectedIndex = 1)
End Sub
答案 3 :(得分:-1)
TextBox1.Visible = (ComboBox1.SelectedIndex = 0)
完美无缺。
您还必须确保在文本框和标签的“属性”下将“可见”设置为“False”。否则,在运行应用程序时,文本框最初将可见。