GridView против. Таблица HTML (ASP.net 2.0)

Для полного контроля над вашим приложением вы предпочитаете GridView или таблицу HTML? И почему?

Например, мне нужно на лету создавать гиперссылки для каждой строки в таблице GridView / HTML. К какому объекту было бы проще добавить эту функцию (или другие подобные этой)?

Примечание: я создаю свои наборы данных программно

Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
4
0
15 825
5
Перейти к ответу Данный вопрос помечен как решенный

Ответы 5

Ответ принят как подходящий

Если вам не нужна встроенная поддержка сортировки или разбиения по страницам и вам нужен больший контроль над визуализированным выводом, я бы подумал об использовании элемента управления Repeater для вывода таблицы. Если вам нужна встроенная сортировка / разбивка по страницам, то GridView может быть очень полезным.

Если вы хотите получить лучшее из обоих миров, обновитесь до ASP.net 3.5 и используйте ListView.

Обновлено: Можете ли вы пояснить, что вы имеете в виду под «гиперссылками на лету для каждой строки»?

'on-the-fly hyperlinks-per-row' = создать несколько гиперссылок в некоторых ячейках

RSilva 07.01.2009 01:45

Я думаю, что Repeater или более новый ListView - это то, что вам нужно, если вам не нужна сортировка и / или разбиение по страницам. Repeater и ListView позволяют вам управлять HTML (GridView в этом отношении представляет собой полный черный ящик и генерирует ужасный HTML), избегая при этом утомительного серверного кода, который поставляется с элементом управления <asp:Table>: «Хорошо, новая строка. Новая ячейка. Сделайте что-нибудь с ячейкой. Добавьте ячейку в строку. Добавьте строку в таблицу. Повторите ».

С другой стороны, если вам нужна разбивка по страницам и сортировка, GridView, вероятно, является лучшим решением.

Вы можете использовать GridView или более простые элементы управления, подобные Repeater, для создания собственного HTML, даже если вам нужно сортировать / разбивать данные на страницы. С помощью Repeater, например, вы можете создать собственную систему разбивки на страницы, используя источник данных PagedDataSource, для которого свойство AllowPaging имеет значение true.

Единственная проблема, очевидно, заключается в том, что с простым повторителем вы должны написать больше кода для выполнения работы, которую GridView выполняет изначально.

Но результат - Быстрее.

Держитесь подальше от Gridview. Он должен опустить весь набор данных, чтобы отобразить разбиение на страницы. Гораздо быстрее визуализировать только нужные вам строки (например, строки 30-40 из 60000) и использовать отдельный элемент управления пейджером. Кроме того, когда дело доходит до HTML / CSS, использование повторителя или списка будет намного проще отлаживать, поскольку вы полностью контролируете код.

Три года спустя этот ответ наконец получил поддержку. Ура длинный хвост!

Mike Robinson 24.10.2012 18:29

Простой HTML <table>, сгенерированный Response.Write, прост и имеет дополнительное преимущество, заключающееся в том, что если вы когда-либо будете работать в системе сторонней компании Microsoft, вы не почувствуете себя голым без их избыточных веб-элементов управления ASP.NET, которые в основном просто делают его еще более удобным. сложно создать HTML, который уже всем известен.

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