0

我有一个从 sqldatasource 中提取数据的 gridview,当单击 Edit 时,我想添加一个下拉列表而不是文本框。下拉列表的值必须预设如下(不是从数据库中提取的)

这是gridview模板代码:

<asp:TemplateField HeaderText="Priority" SortExpression="Priority">
   <EditItemTemplate>
        <asp:DropDownList ID="DropDownList1" runat="server" 
         DataTextField='<%# Bind("Priority") %>' 
         DataValueField='<%# Bind("Priority") %>' 
         DataSource='<%# Bind("Priority") %>' >
         <asp:ListItem>1:High</asp:ListItem>
         <asp:ListItem>2:Medium</asp:ListItem>
         <asp:ListItem>3:Low</asp:ListItem>
        </asp:DropDownList>
   </EditItemTemplate>
   <ItemTemplate>
       <asp:Label ID="lblPriority" runat="server" Text='<%# Bind("Priority") %>'></asp:Label>
   </ItemTemplate>
</asp:TemplateField>

我不断收到与此类似的错误:

DataBinding:“System.Char”不包含名为“3:Low”的属性。

谁能从上面看到是什么原因?

4

1 回答 1

0

您已将 DropDownList 绑定到数据库中的 Priority 字段。因此,每个优先级必须包含以下值之一:

1:High
2:Medium
3:Low

优先级字段是否包含整数(即 1、2、3)或值(即高、中、低)而不是:'1:High'、'2:Medium'.'3:Low'?

如果不是这种情况,请提供优先级字段中的一些示例值。

于 2013-03-15T08:54:36.583 回答