2009-09-04 2 views
0

У меня есть пользовательский элемент управления, который содержит сетку и три кнопки для добавления, редактирования и удаления. Я разместил этот элемент управления на странице asp.net. У меня есть события OnClick для этих кнопок. Когда я нажимаю кнопки «Добавить и удалять», он работает нормально, но когда я нажимаю кнопку «Редактировать», загорается кнопка «onclick» кнопки редактирования, но строка в сетке не отображается в режиме редактирования, я должен нажать два раза. я не знаю, где это problem.The OnClick обработчик события для кнопки редактирования выглядит следующим образом:Редактирование строк в сетке не работает при первом нажатии

protected void btnEditBankAccount_Click(object sender, EventArgs e) 
     { 
      grdBankAccounts.EditIndex = grdBankAccounts.SelectedIndex; 
      grdBankAccounts.RowSelectingEnabled = false; 

     } 

Любой, пожалуйста, помогите.

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

public void SetSupplierData(SupplierType Supplier) 
     { 
      if (Supplier != null) 
      { 
        ViewState["SupplierID"] = Supplier.SupplierId; 
        grdBankAccounts.DataSource = Supplier.BankAccounts; 
        grdBankAccounts.DataBind(); 
        Session["BankAccounts"] = Supplier.BankAccounts; 
     } 
     } 

метод SetSupplierData вызывается из страницы, где у меня есть мой пользовательский элемент управления.

+0

большое спасибо marc_s. моя проблема решена –

ответ

0

Для того, чтобы получить это «редактирование на месте» в сетках, чтобы работать, я обычно приходится данных привязку дважды:

  • один раз в OnInit или метода OnLoad, так что обработчики события нажатия кнопки есть доступные данные для работы на

  • в методе OnPreRender снова, чтобы показать новые значения/новое состояние (редактирование или нет)

Марка

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