2011-01-31 5 views
3

У меня есть сетка. Разметка, как это ...Обновление кнопки позволяет редактировать обработчик событий

<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()?

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

ответ

0

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

Ну почти ... «Редактировать» события можно сопоставить только с функцией, которая имеет (object sender, GridViewCancelEditEventArgs e), как Титулы, также обновить функции должны иметь (object sender, GridViewUpdatedEventArgs e) Params ...

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

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

+0

Не говорит 'onrowupdating =" gvwServers_Updating "и определяет функцию' gvwServers_Updating (object sender, GridViewUpdateEventArgs e) 'сопоставляет событие с функцией? Я не понимаю, почему срабатывает функция 'gvwServers_Edit', когда я нажимаю update. –

Смежные вопросы