我在aspx页面上有这段代码。
<asp:DropDownList runat="server" ID="ddlSize" CssClass="textbox" Width="100px">
<asp:ListItem Value="" Text="" />
<asp:ListItem Value="11" Text="11. Mands" />
<asp:ListItem Value="7" Text="7. Mands" />
<asp:ListItem Value="" Text="Ikke Kamp"/>
</asp:DropDownList>
<asp:DropDownList runat="server" ID="ddlType" CssClass="textbox" Width="100px">
<asp:ListItem Value="" Text="" />
<asp:ListItem Value="K" Text="Kamp" />
<asp:ListItem Value="T" Text="Træning" />
<asp:ListItem Value="E" Text="Aktivitet"/>
</asp:DropDownList>
ts在一个其他字段(文本框)的loginview中 我试图获取一个记录ID到页面,所以我可以编辑它,我已经修复它与文本框及其工作100%,但我不能从数据库中的值到下拉列表,所以它显示该值为选中。 我已经尝试了这3个代码,但在下拉列表中没有任何工作。
// DataValueField
Dim drop_obj As DropDownList = TryCast(LoginView2.FindControl("ddlSize"), DropDownList)
drop_obj.DataValueField = dtEvents.Rows(0)("EventEventSize")
Dim drop_obj2 As DropDownList = TryCast(LoginView2.FindControl("ddlType"), DropDownList)
drop_obj2.DataValueField = dtEvents.Rows(0)("EventType")
// SelectedIndex
Dim drop_obj As DropDownList = TryCast(LoginView2.FindControl("ddlSize"), DropDownList)
drop_obj.SelectedIndex = dtEvents.Rows(0)("EventEventSize")
Dim drop_obj2 As DropDownList = TryCast(LoginView2.FindControl("ddlType"), DropDownList)
drop_obj2.SelectedIndex = dtEvents.Rows(0)("EventType")
// SelectedValue
Dim drop_obj As DropDownList = TryCast(LoginView2.FindControl("ddlSize"), DropDownList)
drop_obj.SelectedValue = dtEvents.Rows(0)("EventEventSize")
Dim drop_obj2 As DropDownList = TryCast(LoginView2.FindControl("ddlType"), DropDownList)
drop_obj2.SelectedValue = dtEvents.Rows(0)("EventType")
有人可以。救命 !?我在2 dtEvents.Rows(0)中有值,我已经检查过,调试然后逐步进入。 我得到像7或11和T或K的值。
答案 0 :(得分:0)
我认为您正在尝试将您的表格与您的列表进行约会。
您想要使用这两个属性:
DataTextField
DataValueField
因此,您希望将DataTextField
(用户将看到的内容)设置为列taht包含显示文本,然后您要设置DataValueField
(赢得的项目的值)没有看到包含它的列。然后你想打电话给DataBind()
。
例如(我的VB非常生疏):
Dim myDDL AS DropDownList();
myDDL.DataTextField = myTable("ColumnDataUserSees")
myDDL.DataValueField = myTable("ColumnDataIWillUse")
myDDL.DataBind()
绝对检查语法。我已经使用C#几个月而没有VB,所以这可能不是100%。