可能重复:
Disable the Edit button on all the rows when Edit button is clicked on a particular row in GridView
如何禁用除EDIT模式下的所有其他行?
我正在尝试找到一种方法来禁用所有其他行,而我当然处于编辑模式,除了编辑模式。
这是我的gridview看起来像:
<gridview....
<edittemplate...>
................
</edittemplate>
............
<asp:CommandField ButtonType="Link" ItemStyle-HorizontalAlign="Center" SelectText="Select"
EditText="Edit" UpdateText="Save" ShowEditButton="true" />
</Columns>
</asp:GridView>
答案 0 :(得分:1)
您需要处理GridView的RowEditing
事件以禁用除编辑之外的所有行。
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
//Put binding code here..
GridView1.DataBind();
foreach (GridViewRow row in GridView1.Rows)
{
if (row.RowIndex != e.NewEditIndex)
{
row.Enabled = false;
}
}
}
编辑:
除此代码外,请验证Page_load方法的绑定代码。
protected void Page_load()
{
if(!IsPostBack)
{
//put GridView databinding code here
}
}