C# 恩,我看看你的方法,它不会更新数据库,是吗?在我的GridView1中,我以前使用过更新查询。现在我把它改成了storedProcedure,使它变得简单。实际上,我希望在数据库表中更新提交的值,并从那里获取它以显示。将向您发送新代码,请稍候。从那时起我做

C# 恩,我看看你的方法,它不会更新数据库,是吗?在我的GridView1中,我以前使用过更新查询。现在我把它改成了storedProcedure,使它变得简单。实际上,我希望在数据库表中更新提交的值,并从那里获取它以显示。将向您发送新代码,请稍候。从那时起我做,c#,gridview,drop-down-menu,C#,Gridview,Drop Down Menu,恩,我看看你的方法,它不会更新数据库,是吗?在我的GridView1中,我以前使用过更新查询。现在我把它改成了storedProcedure,使它变得简单。实际上,我希望在数据库表中更新提交的值,并从那里获取它以显示。将向您发送新代码,请稍候。从那时起我做了一些研究,现在我发现我需要将dropdownlist绑定到dropdown数据源,而不是gridview数据源。默认情况下,它会给我gridview的参数。我的下拉列表位于gridview中。如果您有答案,请发表评论。即使位于gridview


恩,我看看你的方法,它不会更新数据库,是吗?在我的GridView1中,我以前使用过更新查询。现在我把它改成了storedProcedure,使它变得简单。实际上,我希望在数据库表中更新提交的值,并从那里获取它以显示。将向您发送新代码,请稍候。从那时起我做了一些研究,现在我发现我需要将dropdownlist绑定到dropdown数据源,而不是gridview数据源。默认情况下,它会给我gridview的参数。我的下拉列表位于gridview中。如果您有答案,请发表评论。即使位于gridview中的下拉列表可以提及不同的数据源并绑定数据,您也必须在DataSourceID=“sqlDS\u name”字段中提及数据源名称。如果你找不到答案,请用一些有价值的东西或一个例子来阐述你的问题。我附上了一个示例代码,并对其进行了详细解释。如果你有问题,请把它贴在这里。感谢you@Dave:我已经更新了代码,请尝试上面的代码,并让我们知道它是否工作。它有点复杂。我无法实现整个过程,因为您的一些变量名称与我的不同。但你完全明白了。现在当我看你的方法时,它不会更新数据库,是吗?在我的GridView1中,我以前使用过更新查询。现在我把它改成了storedProcedure,使它变得简单。实际上,我希望在数据库表中更新提交的值,并从那里获取它以显示。将向您发送新代码,请稍候。
            <asp:TemplateField HeaderText="Favourite Teacher" >
                <ItemTemplate>
                    <asp:Label ID="lblfavorite_teacher" runat="server" Text='<%# LookupTeacherName(DataBinder.Eval(Container.DataItem, "id")) %>'></asp:Label> 
                </ItemTemplate>
                <EditItemTemplate>
                    <asp:DropDownList ID="ddlfavorite_teacher" runat="server" DataSourceID="sds_teacher_table" DataTextField="name" DataValueField="id" SelectedValue='<%#Bind("id")%>' Width="98%">
                    </asp:DropDownList> 
                </EditItemTemplate>
                <FooterTemplate>
                    <asp:DropDownList ID="ddlNewfavorite_teacher" runat="server" DataSourceID="sds_teacher_table" DataTextField="name" DataValueField="id" SelectedValue='<%#Bind("id")%>' Width="95%">
                    </asp:DropDownList> 
                </FooterTemplate>
               <ItemStyle Width="25%" /> 
           </asp:TemplateField>


    protected string LookupTeacherName(object idObj)
    {
        if (string.IsNullOrEmpty(idObj.ToString()))
            return null;

        string TeacherId = idObj.ToString();

        // find the corresponding name
        IEnumerator enumos = sds_teacher_table.Select(new DataSourceSelectArguments()).GetEnumerator();
        while (enumos.MoveNext())
        {
            DataRowView row = enumos.Current as DataRowView;

            if ((string)row["id"].ToString() == TeacherId)
                return string.Concat(row["name"].ToString());
        }

        return TeacherId;
    }
protected void btnClick_Click(object sender, EventArgs e)
{
    var tmpValue = ((DropDownList)gvRowItem.Cells[/*cellId*/].FindControl("/*dropDownListId*/")).SelectedValue;
}