我有一个字段'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 Access
字段:oStatus
行来源类型:值列表
行来源:取消;订购;待定;处理
答案 0 :(得分:0)
从您的代码中,您似乎使用订单的单一状态作为数据源 - 这意味着您只会在下拉菜单中获得一个项目。换句话说,您编写的查询将只返回单个项目(因为该行只能包含单个值)。
您应该使用所有可能的选项填充下拉列表,然后选择与订单中的状态匹配的项目。不幸的是,我不知道你如何使用<asp:AccessDataSource>
控件,因为我从未使用它。
应该静态填充选项......
<asp:DropDownList runat="server">
<asp:ListValue value="1">Cancelled</asp:ListValue>
...
</asp:DropDownList>
或者如果它们是数据库中的值,那么我猜你使用<asp:AccessDataSource>
来填充它们,然后使用另一种方法根据ordersTable
中的值选择正确的值。 / p>