数据绑定 DropDownList
Posted
技术标签:
【中文标题】数据绑定 DropDownList【英文标题】:Data bound DropDownList 【发布时间】:2012-07-23 17:02:17 【问题描述】:我有一个字段“oStatus”,我在 MS Access 中设置为列表框值列表,行源:已取消;订购;待办的;处理,我已经将我的 DropDownList 控件配置到数据源。
但是,当我单击网页中的下拉菜单时,控件仅显示字段的结果(例如订购)。我怎样才能让它在下拉列表中显示其他项目? (已取消、待处理、处理中等)
<asp:DropDownList ID="DropDownList1" runa4="server"
DataSourceID="AccessDataSource7" DataTextField="oStatus"
DataValueField="oStatus">
</asp:DropDownList>
<asp:AccessDataSource ID="AccessDataSource7" runat="server"
DataFile="~/App_Data/DB.mdb"
SelectCommand="SELECT [oStatus] FROM [ordersTable] WHERE (oOrderNo = ?)">
<SelectParameters>
<asp:QueryStringParameter Name="?" QueryStringField="oOrderNo" />
</SelectParameters>
</asp:AccessDataSource>
MS 访问
字段:oStatus
行源类型:值列表
行来源:已取消;订购;待处理;处理中
【问题讨论】:
也许我没有正确表达我的问题,但我希望下拉列表控件包含已取消;订购;待处理等,无论数据库中的字段值如何 您是说您的数据源只有“Ordering”并且您想将其他值添加到数据源中吗?其他值是否来自数据源,或者您只需要在它们不存在时添加它们? 是的,我希望下拉列表显示字段的值,但单击下拉列表也会显示其他选项(取消等)。希望它像在 MS Access 中一样工作。 如果不确切了解您目前的情况(而不是模糊的陈述),不可能回答您的问题 @user1166862 - 您找到解决问题的方法了吗?是否如我的回答中所建议的那样? 【参考方案1】:从您的代码来看,您似乎正在使用 订单的单一状态 作为数据源 - 这意味着您只会在下拉列表中获得一个项目。换句话说,您编写的查询只会返回一个项目(因为该行只能包含一个值)。
您应该使用所有可能的选项填充下拉列表,然后选择与订单状态匹配的项目。不幸的是,我不知道您将如何使用 <asp:AccessDataSource>
控件来做到这一点,因为我从未使用过它。
这些选项应该以静态方式填充...
<asp:DropDownList runat="server">
<asp:ListValue value="1">Cancelled</asp:ListValue>
...
</asp:DropDownList>
或者如果它们是数据库中的值,那么我猜你使用<asp:AccessDataSource>
填充它们,然后使用另一种方法根据ordersTable
中的值选择正确的值。
【讨论】:
以上是关于数据绑定 DropDownList的主要内容,如果未能解决你的问题,请参考以下文章