我在运行时ddlMerchant
有一个下拉列表loads
。
Sub LoadMerchant()
Try
Utilities.GetTerminal(ddlMerchant, -999, -999, "-999", "-999", "-999")
ddlMerchant.Items.Insert(0, New ListItem("Select", -999))
ddlMerchant.SelectedIndex = 0
Catch ex As Exception
End Try
End Sub
Utilities.GetTerminal
objBox.Items.Clear()
Try
Dim drTemp As SqlDataReader = GenericDB.ExecuteSPForDataReader("spGetTerminal", CountryID, CityID, MerchantID, TerminalID, POSSerial)
While drTemp.Read()
Dim sTerminal As String = ""
sTerminal = drTemp.Item("TerminalID") + " : " + Convert.ToString(drTemp.Item("MerchantName1"))
objBox.Items.Add(New ListItem(sTerminal, drTemp.Item("TerminalID")))
End While
objBox.SelectedIndex = 0
drTemp.Close()
Catch ex As Exception
Throw ex
End Try
问题是,它加载并插入result set
的所有项目,但它只是错过了
第二个项目。虽然我可以在调试期间看到sTerminal
中的第二个项目,但它没有显示在dropdown
中。
这是下拉列表,不显示第二项
这是我在执行存储过程时在SQL Server中得到的结果集,您可以在其中看到下拉列表缺少终端ID为00000002
的项目,尽管它已返回
答案 0 :(得分:0)
您的下拉列表中的第一个条目(选择)看起来也不见了。
ddlMerchant.Items.Insert
看起来是个问题。尝试将其移至Utilities.GetTerminal
功能,并在清除项目(objBox.Items.Clear()
)后,添加'选择'选项,然后是数据库中的条目