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;
}