LinkButton дочерние элементы управления рендеринга
Я хочу иметь LinkButton, который добавляет тег "span" вокруг текста.
protected override void Render(HtmlTextWriter writer)
{
Text = String.Concat("<span>", Text, "</span>");
base.Render(writer);
}
Это работает отлично, но только если я добавлю текст следующим образом:
<cc:TestLinkButton ID="TestLinkButton" runat="server" Text="SomeText">
</cc:TestLinkButton>
Если я хочу добавить изображение, я напишу что-то вроде этого:
<cc:TestLinkButton ID="LinkButton1" runat="server">
<asp:Image ID="Image1" runat="server" ImageUrl="~/Images/icon_holiday.png" BorderWidth="0" />
SomeText
</cc:TestLinkButton>
В этом случае свойство Text будет пустым, потому что фактически "SomeText" является свойством дочернего элемента управления.
Итак, вопрос в том, как добавить тег вокруг дочерних элементов управления.
1 ответ
Нет необходимости писать собственный элемент управления, чтобы сделать что-то такое простое.
Посмотрите, как это делается для элементов управления вводом: http://attardi.org/labels/
Этот метод использует позиционирование CSS для наложения пролета. Это может сработать для вас.