Private Sub BindExam()
   ...
End SubPrivate Sub BindGrade()
   ...
End Sub        Private Sub drpExam_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles drpExam.SelectedIndexChanged
            BindGrade()
        End Sub

解决方案 »

  1.   

    在省的SelectedIndexChanged事件中,绑字城市,绑定需市的时候取数据源,
    是根据省的selectvalue来确定的
      

  2.   

    简单,SelectedIndexChanged事件中做相应的处理
      

  3.   

    我已经搞定了,把源代码帖出来,如下:
        Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            '在此处放置初始化页的用户代码
            If Not IsPostBack Then
                Me.SqlDataAdapter1.Fill(Me.DsDept1)
                Me.DataBind()
            End If
        End Sub    Private Sub cboDept_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboDept.SelectedIndexChanged
            Dim cmd As New SqlCommand(" SELECT Name From Employee Where Dept=@Dept", Me.SqlConnection1)        cmd.Parameters.Add("@Dept", System.Data.SqlDbType.NVarChar, 10)
            cmd.Parameters("@Dept").Value = cboDept.Items(cboDept.SelectedIndex).Text        SqlConnection1.Open()
            Dim dr As SqlDataReader = cmd.ExecuteReader()
            cboStaff.Items.Clear()
            While dr.Read
                cboStaff.Items.Add(dr(0).ToString())
            End While
            If SqlConnection1.State <> ConnectionState.Closed Then SqlConnection1.Close()
        End Sub其中有几个需要注意的地方:1. Page_Load里面一定要增加 If Not IsPostback,否则每次CboDept里面的SelectIndex都是指向第一行。因为DropDownList已经被重新填充了。
    2.我在
    cmd.Parameters("@Dept").Value = cboDept.Items(cboDept.SelectedIndex).Text 
    中遇到这样一个错误,写代码的时候写成了这样
    cmd.Parameters("@Dept").Value = cboDept.Items(cboDept.SelectedIndex)  '后面没有Text了。出现的错误是: 对象必须实现IConvetable。
    希望成为前车之鉴,大家不要再犯同样的错误。