Drop down menu 运行时创建的不同DropDownList不允许选择不同的项?

Drop down menu 运行时创建的不同DropDownList不允许选择不同的项?,drop-down-menu,copy,runtime,items,Drop Down Menu,Copy,Runtime,Items,我需要在运行时创建许多dropdownlists,并为每个dropdownlists选择不同的项。 为了避免连续访问数据库,我创建了一个dropdownlist,复制了克隆的dropdownlists中的项目。奇怪的是,所有创建的dropdownlists都选择了最后一个dropdownlist的项目,我不明白为什么!我必须插入所选项目的清理[“DlistClone.ClearSelection()”],否则代码会出错。有人能帮我吗?谢谢 Protected Sub Button1_Cli

我需要在运行时创建许多dropdownlists,并为每个dropdownlists选择不同的项。 为了避免连续访问数据库,我创建了一个dropdownlist,复制了克隆的dropdownlists中的项目。奇怪的是,所有创建的dropdownlists都选择了最后一个dropdownlist的项目,我不明白为什么!我必须插入所选项目的清理[“DlistClone.ClearSelection()”],否则代码会出错。有人能帮我吗?谢谢

   Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim MyRow As New TableRow
    Dim MyCell As New TableCell

    Dim DList As DropDownList
    Dim DlistClone As DropDownList
    DList = New DropDownList
    DList.Items.Add("1")
    DList.Items.Add("2")
    DList.Items.Add("3")

    MyRow = New TableRow
    MyCell = New TableCell
    DlistClone = New DropDownList
    ClonaDList(DList, DlistClone)
    DlistClone.ClearSelection()
    DlistClone.Items.FindByText("3").Selected = True
    MyCell.Controls.Add(DlistClone)
    MyRow.Cells.Add(MyCell)

    Table1.Rows.Add(MyRow)

    MyRow = New TableRow
    MyCell = New TableCell
    DlistClone = New DropDownList
    ClonaDList(DList, DlistClone)
    DlistClone.ClearSelection()
    DlistClone.Items.FindByText("2").Selected = True
    MyCell.Controls.Add(DlistClone)
    MyRow.Cells.Add(MyCell)

    Table1.Rows.Add(MyRow)
End Sub

Sub ClonaDList(ByVal Origine As DropDownList, ByVal Destinazione As DropDownList)
    Dim I As Integer
    Dim EleList As ListItem

    For I = 0 To Origine.Items.Count - 1
        EleList = Origine.Items(I)
        Destinazione.Items.Add(EleList)
    Next I
End Sub
好的,我自己买的! 当我这样做的时候

EleList=来源。项目(I)
Destination.Items.Add(EleList)

我无意中在源Dropdownlist和目标Dropdownlist之间创建了一个绑定。 要中断绑定,我必须在两个控件之间使用桥接器,在这种情况下,我通过在两个连续步骤中设置两个属性来使用Listitem对象

Sub ClonaDList(ByRef Origine As DropDownList, ByRef Destinazione As DropDownList)
    Dim I As Integer
    Dim EleList As ListItem

    For I = 0 To Origine.Items.Count - 1
        EleList = New ListItem
        EleList.Text = Origine.Items(I).Text
        EleList.Value = Origine.Items(I).Value
        Destinazione.Items.Add(EleList)
    Next I
End Sub
我说得对吗