Нажать где угодно на строку GridView для ввода в режим редактирования

я хочу копировать ту же функциональность кнопки редактирования с помощью одиночного нажатия где угодно в строке GridView.

код ниже делает это, но с основной проблемой: если пользователь нажимает прочь одного текстового поля к следующему, , команда редактирования стреляет снова , и изменения, внесенные в предыдущее текстовое поле, возвращаются назад к, он - исходное значение.

Какие-либо предложения о том, как зафиксировать это поведение?

Или, там лучший подход к выполнению этого?

РЕДАКТИРОВАНИЕ: Это было разрешено путем добавления проверки на строка. RowState. HasFlag (DataControlRowState. Редактирование) . См. код ниже:

protected override void Render( System.Web.UI.HtmlTextWriter writer )
{
    foreach( GridViewRow row in gvwOrderItems.Rows )
    {
        if( row.RowType == DataControlRowType.DataRow &&
            row.RowState.HasFlag( DataControlRowState.Edit ) == false )
        {
            // enable click on row to enter edit mode
            row.Attributes["onclick"] =
                ClientScript.GetPostBackClientHyperlink( gvwOrderItems, "Edit$" + row.DataItemIndex, true );
        }
    }
    base.Render( writer );
}
6
задан jim31415 2 September 2011 в 16:22
поделиться