Кнопка Обновить запускает обработчик события редактирования - PullRequest
3 голосов
/ 31 января 2011

У меня есть сетка.Разметка выглядит следующим образом ...

<asp:GridView ID="gvwServers" runat="server" class="gvwServers"  
AutoGenerateColumns="false"  OnRowEditing="gvwServers_Edit" 
onrowcancelingedit="gvwServers_Cancelling" onrowdeleting="gvwServers_Deleting" 
onrowupdated="gvwServers_Updated" onrowupdating="gvwServers_Updating"
AutoGenerateEditButton=true AutoGenerateDeleteButton=true>

  <columns>
    <asp:CommandField ButtonType="Button" EditText="Edit" ShowEditButton="true" />
    <asp:CommandField ButtonType="Button" EditText="Delete" ShowDeleteButton="true" />

    ...Bound fields and template fields etc...

Мой код позади имеет это ...

protected void gvwServers_Edit(object sender, GridViewEditEventArgs e)
{
    gvwServers.EditIndex = e.NewEditIndex;
    gvwServers.DataBind();
}
protected void gvwServers_Updated(object sender, GridViewUpdatedEventArgs e)
{
    gvwServers.DataBind();
}

protected void gvwServers_Updating(object sender, GridViewUpdateEventArgs e)
{
    gvwServers.DataBind();
}
protected void gvwServers_Deleting(object sender, GridViewDeleteEventArgs e)
{
    gvwServers.DataBind();
}
protected void gvwServers_Cancelling(object sender, GridViewCancelEditEventArgs e)
{
    e.Cancel = true;
    gvwServers.EditIndex = -1;
    gvwServers.DataBind();
}

Дело в том, что большинство из этих процедур запускаются правильно, т.е., За исключением , когда я нажимаю кнопку Обновить, gvwServers_Edit() срабатывает.Почему это происходит?Как сделать так, чтобы кнопка «Обновить» нажала кнопку «огонь» gvwServers_Updating()?

Обновление: Моя проблема решена здесь .

1 Ответ

0 голосов
/ 31 января 2011

Вы всегда можете переназначить событие на функцию.

Ну, почти ... события "Редактировать" могут отображаться только в функцию, имеющую (object sender, GridViewCancelEditEventArgs e) в качестве параметров, аналогично функции обновления должны иметь (object sender, GridViewUpdatedEventArgs e) параметры ...

Вы можете использовать готовую функцию обработки событий или создать свою собственную, опять же, ключом является тип параметра 'e'.

Если вы хотите иметь общие функции для событий Edit () и Updating (), поместите этот код в отдельную функцию, которая вызывается обработчиками при возникновении этих событий.

...