GridView Сортировка без потери пользовательских модификаций - PullRequest
0 голосов
/ 18 ноября 2011

У меня немного уникальная проблема.Я использую GridView для отображения информации из базы данных.Требования для этого GridView заключаются в том, что он всегда редактируемый, поэтому у меня есть TextBoxes в ItemTemplates и я хочу сохранить значения при нажатии кнопки.

Это все прекрасно работает.

Проблема в том, что я пытаюсь заставить сортировку (и, в конечном итоге, подкачку страниц) работать и решать проблемы.Если я связываю GridView из ObjectDataSource, это, очевидно, не сработает, потому что он перепривязывает источник данных до его сортировки, и я теряю любые измененные значения.Если я связываю GridView из DataTable и пытаюсь сохранить его в переменной Session, он все еще не работает, потому что любые измененные значения отсутствуют в переменной сеанса.

Яна самом деле просто ищу предложения о том, что я мог бы сделать, чтобы отсортировать (и страницу позже) без потери значений, которые пользователь изменил.Я понимаю, что большинство людей не изменяют Gridview сразу, поэтому это странная проблема.

1 Ответ

1 голос
/ 18 ноября 2011

Вы могли бы реализовать сортировку GridView на стороне клиента, что обеспечило бы быструю работу вашего пользовательского интерфейса. сообщение в блоге о сортировке с помощью jQuery можно попробовать, хотя я лично не использовал предложенный метод.

Кроме того, вы можете отправить значения обратно на сервер через AJAX во время редактирования и сохранить их (временно) в сеансе, базе данных или там, где это имеет смысл публикации в вашем сценарии. Очевидно, вам нужно будет получить их при сортировке.

Последний вариант - сохранить значения в обратной передаче, вызванной командой sort. По большей части вы должны делать что-то вроде обработки события OnTextChanged TextBoxes и (как указано выше) сохранения значений во временном хранилище. Вы не хотели бы, чтобы эти TextBoxes автоматически отправляли посты - они просто ожидали бы постбэк, такой как тот, который вызван вашим событием сортировки. В этом сценарии вы также можете использовать временное хранилище, которое вы заполняете во время события сохранения, чтобы избежать дублирования усилий.

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