Получить измененные строки GridView ASP.Net - PullRequest
1 голос
/ 16 июня 2009

Как я могу найти все строки, которые были изменены в gridview. Я не могу использовать Ajax в любой форме

Ответы [ 3 ]

1 голос
/ 16 июня 2009

Нет реального эффективного способа сделать это, нет метода, подобного GridView.GetAllChangedRows (). Таким образом, вместо этого вы можете сохранить закулисный список, который вы добавляете при каждом изменении строки (используйте метод RowUpdated), а затем очищаете этот список при необходимости.

1 голос
/ 16 июня 2009

Сначала получите содержимое вашей сетки до того, как она была изменена (например, кэшируйте результаты исходной привязки источника данных gridview). Затем просмотрите набор данных / datatable /, какой бы вы ни хотели его сохранить, и сравните содержимое с текущими строками таблицы.

0 голосов
/ 05 июня 2010

Это зависит от того, сколько столбцов вы хотите редактировать в строке.

Если у вас есть только один редактируемый столбец в строке, вы можете связать метод javascript с тем элементом управления, который вы хотите изменить, и в этом методе вы можете получить идентификатор строки, который вы можете сохранить в другом скрытом поле и на стороне сервера. может получить все строки, идентификаторы которых хранятся в скрытом поле.

Если у вас есть целая строка, редактируемая в этом случае, я думаю, что лучше всего сохранить исходный источник данных где-нибудь, а также установить метод javascript с событием rowclick, чтобы получить rowid, который выбирает пользователь. Затем, когда пользователь нажимает кнопку отправки, получают все строки, идентификаторы строк которых хранятся в скрытом поле, а затем сравнивают строки с одинаковым rowid в источнике данных. Это лучший подход с моей точки зрения.

Позвольте привести пример. Предположим, в сетке 1000 строк, а пользователь щелкает только 180 строк. В этом случае мы будем сравнивать только 180 строк и не будем сравнивать остальные строки.

Пожалуйста, дайте мне знать, если у кого-то есть идея получше, чем это.

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