Asp.net 如何让DropDownList从文本框复制数据?

Asp.net 如何让DropDownList从文本框复制数据?,asp.net,vb.net,visual-web-developer-2010,Asp.net,Vb.net,Visual Web Developer 2010,目前在我的Web表单中,我有一个级联下拉列表,但我现在主要关注第一个下拉列表 下面是加载列表的代码 Private Sub FillLine() ' load 1st dropdown data Dim dt As New DataTable Dim strSql = "select distinct level1_id, [LCODE1]+ ' | '+[LNAME1] as [LCODE1]" _ &

目前在我的Web表单中,我有一个级联下拉列表,但我现在主要关注第一个下拉列表

下面是加载列表的代码

Private Sub FillLine() ' load 1st dropdown data

    Dim dt As New DataTable
    Dim strSql = "select distinct level1_id, [LCODE1]+ ' | '+[LNAME1] as [LCODE1]" _
                      & " FROM [SQLIOT].[dbo].[ZVIEW_MCM_LEVEL_LOOKUP]"
    Using conn As New SqlConnection(ConStr),
        cmd As New SqlCommand(strSql, conn)
        conn.Open()
        dt.Load(cmd.ExecuteReader)
    End Using
    If dt.Rows.Count > 0 Then
        line.DataSource = dt
        line.DataTextField = "LCODE1" 
        line.DataValueField = "level1_id"

        line.DataBind()
        line.Items.Insert(0, "")
    End If

End Sub
这是我提取的数据的视觉表现

| level1_id |    LCODE1     |
-----------------------------
|     1     |  A01 | Line 1 |
我还希望根据URL查询字符串自动加载正确值的下拉列表

我的计划是首先在一个不可见的文本框中加载该值,并指示下拉列表使用页面加载事件基于该文本框选择相同的数据

'load textbox with query string info

Sub loadFrmQuery()

    Dim LID As String = Request.QueryString("LID")

    Dim cmd As New SqlCommand("SELECT level1_id " _
                            & ", level2_id " _
                            & ", level3_id " _
                            & "FROM [SQLIOT].[dbo].[ZVIEW_MCM_LEVEL_LOOKUP] " _
                            & "where [LEVEL3_ID] = '" & LID & "'", conn)

    conn.Open()

    Dim rdr As SqlDataReader = cmd.ExecuteReader

    While rdr.Read

        line_text.Text = rdr("level1_id")

        process_text.Text = rdr("level2_id")

        equip_text.Text = rdr("level3_id")

    End While

    conn.Close()

End Sub

'page load event

 Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

    If Session("EmpID") Is Nothing Then

        Response.Redirect("~/Login.aspx")

    Else

        If Not IsPostBack Then 'whenever hv dropdownlist, need to have this in load sub, or else won't get ddl data.

            FillLine()
            loadFrmQuery()

            line.DataValueField = line_text.Text

        End If

    End If

End Sub

但是在测试期间,下拉列表不会加载数据。我尝试调用下拉列表中的DataTextField和DataValueField,但仍然没有响应。在这种情况下,我该怎么办?

level1\u id是ZVIEW\u MCM\u LEVEL\u查找的主键吗?在完整SQL表中,否。但在此选择中,是。在页面中。加载
line.DataValueField=line\u text.text
。您已经使用
line.DataValueField=“level1\u id”
FillLine()
中设置了此属性,将其重置为该文本框的内容没有多大意义。当时我认为使用该行意味着我正在告诉下拉列表在其选择范围内选择该值。如果这样做会重置列表的内容,正确的方法应该是什么?我知道了。。。它是
行。selectedvalue
。真不敢相信这么明显。。。