我的客户希望GridView仅显示TextBoxes和DropDownListBoxes中的字段。他希望只需在更改单元格中的值后单击“更新”按钮即可灵活地更新Record。
他希望当前编辑GridViewRow有一些不同的颜色,以便他可以点击该特定行的“更新”按钮。
如何识别GridView中的当前编辑行?由于没有可以点击的编辑按钮!!
答案 0 :(得分:1)
可能您正在寻找GridView.EditIndex
此处教程似乎适合您的问题:http://csharpdotnetfreak.blogspot.com/2009/05/gridview-sqldatasource-insert-edit.html
答案 1 :(得分:1)
基于Gridview行EditItemIndex,您可以查找行是否处于编辑模式。请参阅this了解更多信息。
答案 2 :(得分:1)
您可以使用此代码选择行,并显示不同颜色的行。 你可以突出显示,
protected override void Render(System.Web.UI.HtmlTextWriter writer)
{
AddRowSelectToGridView(gridView);
base.Render(writer);
}
private void AddRowSelectToGridView(GridView gv)
{
try
{
foreach (GridViewRow row in gv.Rows)
{
row.Attributes["onmouseover"] = "this.style.cursor='hand';
this.style.textDecoration='underline';";
row.Attributes["onmouseout"] = "this.style.textDecoration='none';";
row.Attributes.Add("onclick",Page.ClientScript.GetPostBackEventReference(gv,"Select$"+row.RowIndex.ToString(), true));
}
}
catch (Exception ex)
{ }
}
答案 3 :(得分:0)
你在说多行编辑吗?或者所有行都显示其可编辑UI的场景?如果是这种情况,最好的方法是对所有字段使用TemplateFields,并在模板中呈现文本框/其他控件。开箱即用,不支持多行编辑。
或者您可以创建自定义控件,如此处所做的那样:http://blogs.msdn.com/b/mattdotson/archive/2005/11/09/real-world-gridview-bulk-editing.aspx
如果您只是简单编辑,选择AutoGenerateUpdateButton =“true”将添加更新按钮,或手动添加命令字段并将其CommandName设置为更新。
HTH。