2014-09-02 1 views
0

Для этого я использовал GridView.EditIndex = -1, однако мне всегда нужно дважды нажимать кнопку. Если данные уже присутствуют в gridview, они удаляются из gridview. Почему это?Отправка GridView в режим редактирования с помощью отдельной кнопки

Я попытался:
this.subBindGrid();

protected void subBindGrid() 
{ 
    GridView.Columns[7].Visible = true; 
    GridView.DataSource = <filepath>.Tables[0].DefaultView; 
    GridView.DataBind(); 
} 

Я также попытался:

GridView.DataBind(); 

на своем собственном.

Ни один из них не имеет никакого значения.

ответ

1

Всякий раз, когда вы нажимаете на любой элемент управления на странице. Затем запрос отправляется на сервер для новой страницы из-за отсутствия апатрида http. Каждый раз, когда вы нажимаете кнопку, вы получаете новую страницу с DataSource gridview пустым. чтобы решить эту проблему. после GridView.EditIndex = -1.
Bind вашего Datasource и subBindGrid(); помните, что это будет работать только если <filepath>.Tables[0].DefaultView не является нулевым

+0

Хорошо, у меня есть адаптер данных 'holdone' и набор данных' holdall'. Как я могу дать 'holdall' некоторую персистенцию, так что« DefaultView », указывающий на нее, не возвращает null? – Wolfish

+1

вы можете использовать сеанс для управления состоянием. сделайте представление по умолчанию для своей таблицы и сохраните его в сеансе, используя его, когда вам нужно. Но если вы хотите получать обновленные данные каждый раз, чем вы должны заполнить свой datatable из базы данных. –

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