我的页面有两个dropdownlist,一个用来选择课程,其中一个dp1绑定课程类别cname字段,另一个subject绑定课程名lname字段,我想让用户选择dp1后subject的数据内容马上跟着改变。主要程序如下:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
If Not Page.IsPostBack Then
Dim cnn As New OleDb.OleDbConnection
Dim cmd As New OleDb.OleDbCommand
Dim da As New OleDb.OleDbDataAdapter
Dim dt As New DataTable
cnn.ConnectionString = "..."
cnn.Open()
cmd.Connection = cnn
cmd.CommandText = "SELECT cname FROM lessoncls"
da.SelectCommand = cmd
da.Fill(dt)
dp1.DataSource = dt.DefaultView
dp1.DataTextField = "cname"
dp1.DataValueField = "cname"
dp1.DataBind()
End If
End Sub
......
Private Sub dp1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles dp1.SelectedIndexChanged
Dim cnn As New OleDb.OleDbConnection
Dim cmd As New OleDb.OleDbCommand
Dim da As New OleDb.OleDbDataAdapter
Dim dt As New DataTable
cnn.ConnectionString = "...."
cnn.Open()
cmd.Connection = cnn
cmd.CommandText = "SELECT lname FROM lesson WHERE (cname = '" & dp1.SelectedValue & "')"
da.SelectCommand = cmd
da.Fill(dt)
Subject.DataSource = dt.DefaultView
Subject.DataTextField = "lname"
Subject.DataValueField = "lname"
Subject.DataBind()
End Sub
但是运行时没效果,就是dp1选了之后subject没改变。不知怎么回事。还有,我还想在一开始用户还没选择时使dropdownlist显示“请选择.."但是绑定数据之后就弄不出来。请各位高手指教。
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
If Not Page.IsPostBack Then
Dim cnn As New OleDb.OleDbConnection
Dim cmd As New OleDb.OleDbCommand
Dim da As New OleDb.OleDbDataAdapter
Dim dt As New DataTable
cnn.ConnectionString = "..."
cnn.Open()
cmd.Connection = cnn
cmd.CommandText = "SELECT cname FROM lessoncls"
da.SelectCommand = cmd
da.Fill(dt)
dp1.DataSource = dt.DefaultView
dp1.DataTextField = "cname"
dp1.DataValueField = "cname"
dp1.DataBind()
End If
End Sub
......
Private Sub dp1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles dp1.SelectedIndexChanged
Dim cnn As New OleDb.OleDbConnection
Dim cmd As New OleDb.OleDbCommand
Dim da As New OleDb.OleDbDataAdapter
Dim dt As New DataTable
cnn.ConnectionString = "...."
cnn.Open()
cmd.Connection = cnn
cmd.CommandText = "SELECT lname FROM lesson WHERE (cname = '" & dp1.SelectedValue & "')"
da.SelectCommand = cmd
da.Fill(dt)
Subject.DataSource = dt.DefaultView
Subject.DataTextField = "lname"
Subject.DataValueField = "lname"
Subject.DataBind()
End Sub
但是运行时没效果,就是dp1选了之后subject没改变。不知怎么回事。还有,我还想在一开始用户还没选择时使dropdownlist显示“请选择.."但是绑定数据之后就弄不出来。请各位高手指教。
----------------
在这一句后面加:
dp1.Items.Insert(0,new ListItem("请选择..",""));
----------------
在这一句后面加:
dp1.Items.Insert(0,new ListItem("请选择..",""));-------------------
支持。你也可以在你读出数据就加上这个!