Code //把编辑列设模板列,然后dropdownlist绑定数据源//然后在databinding里把selectedvalue的值绑定到要更新的列名上 <tr> <td><asp:GridView ID="GridView1" runat="server" AutoGenerateColumns=False DataKeyNames="id" DataSourceID="SqlDataSource1" Width="292px"> <Columns> <asp:BoundField DataField="id" HeaderText="id" ReadOnly="True" SortExpression="id" /> <asp:TemplateField HeaderText="roles" SortExpression="roles"> <EditItemTemplate> <asp:DropDownList ID="DropDownList1" runat="server" DataSourceID="SqlDataSource1" DataTextField="power_id" DataValueField="power_id" SelectedValue='<%# Bind("roles") %>'> </asp:DropDownList><asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:cmssConnectionString %>" SelectCommand="SELECT [power_id] FROM [power]"></asp:SqlDataSource> </EditItemTemplate> <ItemTemplate> <asp:Label ID="Label1" runat="server" Text='<%# Bind("roles") %>'></asp:Label> </ItemTemplate> </asp:TemplateField> <asp:CommandField ShowEditButton="True" /> </Columns> </asp:GridView> </td> </tr> <tr> <td style="width: 73px"> </td> <td style="width: 100px"> <asp:SqlDataSource ID="SqlDataSource1" runat="server" UpdateCommand ="update admin set roles=@roles where id=@original_id" OldValuesParameterFormatString ="original_id" ConnectionString="<%$ ConnectionStrings:cmssConnectionString %>" SelectCommand="SELECT [roles], [id] FROM [admin]"></asp:SqlDataSource> </td> </tr> 转载于:https://www.cnblogs.com/291099657/archive/2008/12/19/1358139.html