0
  Protected Sub DropDownList2_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DropDownList2.SelectedIndexChanged
        MsgBox("OK")
        If (DropDownList2.SelectedIndex) = 1 Then
            ListBox1.Visible = True
        End If
    End Sub

上記のコードで問題に直面しています。ドロップダウンリストの値が変更されたときにリストボックスを表示したい。誰もそれを知っていますか?

4

2 に答える 2

1

ドロップダウンの SelectedIndexChange は、別のアイテムを選択するたびに発生します。ただし、SelectedIndex = 1 の場合にのみ ListBox を表示しています。次のように SelectedIndex 条件を削除します。

Protected Sub DropDownList2_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DropDownList2.SelectedIndexChanged
        'MsgBox("OK")
        ListBox1.Visible = True
End Sub

また、ドロップダウンの選択が変更されるたびに ListBox が表示されます。

ところで: リストボックスの可視性をfalseに設定する方法は明確ではありません。Uou は、いくつかのマークアップとコードを投稿して明確にすることができます。

于 2013-09-13T08:48:07.780 に答える
0

次のコードを使用して、ドロップダウンリストの値が変更されたときにリストボックスが表示されるようにすることができます

Protected Sub DropDownList2_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DropDownList2.SelectedIndexChanged

Dim cs As ClientScriptManager = Page.ClientScript

 cs.RegisterClientScriptBlock(Me.GetType(), "MyScript", "<script type=""text/javascript""> Alert("Ok"); </script>", False);
 ListBox1.Visible = True
    End Sub

ただし、ユーザーが最初/2番目またはn番目のアイテムを選択したときに変更したい場合は、これを使用できます

 Protected Sub DropDownList2_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DropDownList2.SelectedIndexChanged

    Dim cs As ClientScriptManager = Page.ClientScript

     cs.RegisterClientScriptBlock(Me.GetType(), "MyScript", "<script type=""text/javascript""> Alert("Ok"); </script>", False);


if DropDownList2.SelectedIndex = 0  //makes the listbox visible only when you select the first item, Use 1 for making the list box visible on the selection of the second item, so on and so forth.
     ListBox1.Visible = True
end if

        End Sub
于 2013-09-13T09:25:26.950 に答える