这是源中的html代码:
<asp:DropDownList ID="DropMachineType" runat="server"
DataSourceID="MachineTypeDataSource" DataTextField="MachineTypeName"
DataValueField="MachineTypeId"></asp:DropDownList>
<asp:ObjectDataSource ID="MachineTypeDataSource" runat="server"
SelectMethod="GetAllMachineTypes" TypeName="sxnjmlsbBLL.MachineTypeManager">
</asp:ObjectDataSource>
这是codebehind中的代码:
ProductInfo productInfo = ProductInfoManager.GetProductInfoById(id);
DropMachineType.SelectedValue= productInfo.MachineType.MachineTypeName.ToString();
productInfo.MachineType.MachineTypeName.ToString()的返回值已经是一个字符串,而DropMachineType控件之前已经绑定了数据源,现在让它显示该字符串的值。
<asp:DropDownList ID="DropMachineType" runat="server"
DataSourceID="MachineTypeDataSource" DataTextField="MachineTypeName"
DataValueField="MachineTypeId"></asp:DropDownList>
<asp:ObjectDataSource ID="MachineTypeDataSource" runat="server"
SelectMethod="GetAllMachineTypes" TypeName="sxnjmlsbBLL.MachineTypeManager">
</asp:ObjectDataSource>
这是codebehind中的代码:
ProductInfo productInfo = ProductInfoManager.GetProductInfoById(id);
DropMachineType.SelectedValue= productInfo.MachineType.MachineTypeName.ToString();
productInfo.MachineType.MachineTypeName.ToString()的返回值已经是一个字符串,而DropMachineType控件之前已经绑定了数据源,现在让它显示该字符串的值。
这样不行吗?
提示错误:“DropMachineType”有一个无效 SelectedValue,因为它不在项目列表中。
参数名: value请高人指点!
如果没有数据,没有默认提示无效 SelectedValue
通过下面的就可以实现了……
DropMachineType.SelectedValue = productInfo.MachineType.MachineTypeId.ToString();