Вопрос

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

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

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

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

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

Спасибо..

Это было полезно?

Решение

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

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

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

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

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

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

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

Другие советы

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

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

http://www.gridviewguy.com/

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top