Внедрить HTML в серверный контроль
Как вы вводите HTML в серверный элемент управления?
Я создаю элемент управления календаря и некоторые Javascript /CSS, которые идут с ним.
Кроме того, у меня есть некоторый HTML-код, который генерируется с правильными ClientID, которые работают с JS /CSS, и я хотел бы внедрить это туда, где используется элемент управления "сервер".
Например:
<MyUC:UC1 ID="someUC" runat="server" />
Используя LiteralControls / RegisterClientScriptBlock для включения CSS / JS, но интересовался HTML-инъекцией в тело.
Это будет отображаться как элемент управления, который я построил, плюс CSS/JSS/HTML, который будет с ним.
Я думаю, я могу сгенерировать элементы dom в Javascript include, но мне было интересно, как я могу сделать это со стороны сервера.
2 ответа
ФУНТ:
Посмотрите на эту статью CodeProject:
Упростите конструирование HTML внутри серверных элементов управления ASP.NET с помощью ControlInjector
http://www.codeproject.com/KB/aspnet/ControlInjector.aspx
Если вам нужно просто добавить дополнительную разметку, вы можете использовать LiteralControl для добавления некоторого HTML в ваш серверный элемент управления.
myServerControl.Controls.Add(new LiteralControl("<br />"));
В качестве альтернативы вы можете использовать библиотеку System.Web.UI.HtmlControls, чтобы сгенерировать определенные серверные элементы управления на серверной части и программно создать структуру HTML, которую вы хотите, в своем элементе управления сервером.