редактировать строку данных - PullRequest
3 голосов
/ 20 октября 2008

я хочу знать, как редактировать одну строку (которую я выбираю) в сетке данных

например, у меня есть таблица данных со столбцами A, B и C и у меня есть пара строк данных, около 10 строк.

Допустим, я хочу изменить значение данных в строке 4.

как бы мне это сделать?

Я использую Visual Studio 2003, но думаю, что Visual Studio 2005 тоже подойдет. для кодирования я использую c #

спасибо ..

Ответы [ 3 ]

1 голос
/ 21 октября 2008

Все сетчатые компоненты asp.net имеют тот же механизм, что и при редактировании одной строки. На самом деле для asp.net по умолчанию редактируется только одна строка в сетке.

Чтобы начать редактирование, необходимо включить кнопку asp: button или asp: link в шаблон ItemTame с именем CommandName, установленным на «Edit». Это одно из зарезервированных имен команд, которые все компоненты в виде сетки знают, как реагировать. Нажатие этой кнопки в DataGrid вызовет событие EditCommand. В этом случае вы должны установить EditItemIndex сетки, равный Item.Itemindex событий. Это отрендерит строку в EditItemTemplate.

В этом шаблоне вы положили 2 кнопки или кнопки ссылки. Для параметра CommandName должно быть установлено значение «Обновить», а для параметра CommandName - значение «Отмена».

Кнопка «Обновить» вызывает событие UpdateCommand. В котором вы выполняете код, который хранит данные в строке в своем хранилище (например, в базе данных) и устанавливает для EditItemIndex значение -1 -> все строки отображаются только для чтения (ItemTemplate или AlternateItemTemplate).

Кнопка «Отмена» вызывает событие CancelCommand. В обработчике событий вы должны сделать si установить EditItemIndex в -1.

Это описание верно только для DataGrid, а не для введенного в asp.net GridView, который обрабатывает большую часть этого кода "Boilerplate", который он сам работает вместе с элементами управления источником данных. Google в Интернете для получения дополнительной информации об этом. здесь многое нужно объяснить прямо сейчас.

Надеюсь, это поможет?

1 голос
/ 20 октября 2008

Посмотрите документацию по добавлению EditItemTemplate в свою сетку данных. Вы используете ItemTemplate только для просмотра, отображаемые элементы и EditItemTemplate для элементов управления, используемых для привязки к одной выбранной строке.

Вот ссылка, которая может помочь:

http://www.gridviewguy.com/

0 голосов
/ 20 октября 2008

Есть ли ваши данные в DataTable, прежде чем сделать его DataGrid, или вы можете поместить его в DataTable? Вы можете обновлять / удалять / редактировать строки в DataTable, вот ссылка с фрагментами кода, довольно просто:

http://msdn.microsoft.com/en-us/library/tat996zc(VS.80).aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...