Мне интересно, какие серверные элементы управления обычно используют для окружения и разделения блоков связанных элементов управления и контента в сценарии Web Forms. Часто мне нужно окружить блок HTML и связанные с ним элементы управления сервером с помощью «панели», которую я могу показать или скрыть на основе некоторой логики пользовательского интерфейса в коде. Обычно я сталкиваюсь с использованием Panel, однако это не работает, если мне нужно окружить несколько TR в таблице, например, потому что Panel отображает как div, который недопустим внутри тега Table. В этой ситуации я обычно устанавливаю каждый TR на сервер runat и показываю/скрываю каждый из них по отдельности, но должен быть лучший способ. Я видел элемент управления PlaceHolder, используемый для этого сценария, но хотел знать, есть ли у кого-либо это или какие-либо другие предложения.Лучший серверный контроль для окружающих блоков
ответ
Я не думаю, что есть один ответ, который справедлив для всех сценариев - у нас нет сотен инструментов, чтобы мы всегда могли использовать молоток.
Панели отлично подходят, когда результирующий div будет работать нормально. PlaceHolder наследует Control, а не WebControl, поэтому вы можете сделать аргумент, что он использует меньше накладных расходов. Когда у меня есть таблица и вам нужно скрыть отдельную строку таблицы, у меня нет никаких компромиссов с добавлением и id и runat = "server" в tr.
Или, когда мне нужно создать большую таблицу элементов управления редактором (это соответствует 90% времени, когда я хотел бы скрыть одну строку таблицы). Я даже сделал элемент управления, который автоматизирует некоторые из разметка для меня. Этот элемент управления автоматизирует текст заголовка поля, независимо от того, делает ли он полужирным (обязательным), добавляет подсказку с подсказкой для опрокидывания, и все, что мне нужно добавить вручную, это текстовое поле или другой элемент управления редактором. Положительный побочный эффект заключается в том, что мой пользовательский контроль дает мне идентификатор, который я также могу установить Visible.
Даже с помощью элемента управления PlaceHolder Visual Studio будет жаловаться, что у вас нет действительного HTML.
Вы можете стиснуть зубы и сделать это с помощью блоков коды на стороне сервера, что доступ к свойствам на коде позади:
<table>
<tr>
....
</tr>
<% if(ShowSecretRow) { %>
<tr>
<td>shhh!</td>
</tr>
<% } %>
</table>
Будь осторожны, хотя ... это скользкое, и вы не хотите, чтобы ваш ASPX быть слишком запутанным.
Возможно, буквальный контроль.
Исправьте меня, если я ошибаюсь, но я не думаю, что вы можете разместить объемный HTML на буквальном, если вы не установите его в свойстве text. Я думаю, если вы попытаетесь окружить кучу HTML в .ascx или .aspx с помощью
Вы можете использовать любой элемент html, который хотите, просто укажите его id и сервер runat. Это дает вам некоторую гибкость.
- 1. Как использовать пользовательский серверный контроль
- 2. лучший серверный интерфейс для начальной загрузки
- 3. Лучший контроль версий для Android?
- 4. Лучший контроль для рендеринга HTML
- 5. Пользовательский серверный контроль, с формой и scriptmanager
- 6. Как создать нерегулируемый пользовательский серверный контроль
- 7. Как встраивать JQuery в пользовательский серверный контроль
- 8. изображение, встроенное в пользовательский серверный контроль
- 9. Как установить серверный контроль в Literal?
- 10. AJAX Toolkit 'Неизвестный серверный контроль' Ошибка
- 11. Какой серверный контроль ASP.NET вы бы предложили для этого?
- 12. Найти лучший контроль
- 13. Лучший контроль версий для одиночного разработчика
- 14. Qt Лучший контроль для нескольких столбцов?
- 15. Qt: Лучший контроль для отображения сообщений чата
- 16. Лучший серверный/клиентский протокол, поддерживаемый Python?
- 17. Лучший серверный сервер для хранения фотографий на IOS
- 18. показ окружающих номера страниц
- 19. Пользовательский серверный контроль устанавливает свойства по умолчанию при обратной передаче
- 20. Очистить серверный литеральный контроль перед выгрузкой страницы в ASP.NET
- 21. Как встроить библиотеку jquery в пользовательский серверный контроль asp.net?
- 22. Найти динамически добавленный серверный контроль и использовать его HTML
- 23. Пользовательский серверный контроль: определение объявления декларативно по коду ASPX
- 24. Pushsharp Совместим с Phonegap и поддерживаемыми платформами + серверный контроль
- 25. Лучший подход для передачи больших блоков данных по BLE
- 26. Org-Mode: контроль вывода HTML-кода блоков кода
- 27. Лучший способ обнаружения навигации полный контроль WebBrowser
- 28. Matlab - сумма окружающих элементов
- 29. Терминология окружающих функторы
- 30. Grep + СЭД для замены символов, окружающих строку
Не могли бы вы привести пример того, о чем вы говорите? Я не понимаю, почему вы хотите переключать таблицы строк ... – 2008-10-22 18:44:46
Перемещение строк таблицы достаточно просто ... просто дайте tr runat = "server" и ID ... Он хочет, чтобы общий путь для переключения элементов управления, которые в конце концов не генерируют HTML. – 2008-10-22 18:47:02