Кто-нибудь знает об адаптере CSS для элемента управления LinkButton для ASP.Net 2?
Обновлять:
Мы пытаемся использовать кнопки CSS. Мы используем такой подход: http://www.oscaralexander.com/tutorials/how-to-make-sexy-buttons-with-css.html Для этого нам нужно отобразить теги, которые не выполняет кнопка ссылки.
Возможное решение с использованием адаптера
Мы создали адаптер для кнопки ссылки. Затем изменил RenderContents следующим образом:
protected override void Render(HtmlTextWriter writer) {
LinkButton linkButton = this.Control;
linkButton.Text = String.Concat("<span>", linkButton.Text, "</span>");
base.Render(writer);
}
Кажется, это работает и требует минимум усилий.






Я не думаю, что вывод элемента управления LinkButton мог бы быть более дружественным к CSS ... это чистый HTML-якорь.
Я не знаю, каким образом, вы могли бы просто создать собственный CSS-адаптер, это не должно быть трудным для такого простого управления ... Я не могу представить, каким образом вам нужно будет изменить рендеринг привязки, если вы объясните свою цель, кто-то сможет предоставить решение на чистом CSS.
Мы пытаемся использовать кнопки CSS. Мы используем такой подход: oscaralexander.com/tutorials/… Для этого нам нужно отобразить теги <span>, чего не делает кнопка ссылки.
Вы можете легко сделать это с помощью пользовательского элемента управления или настраиваемого элемента управления для визуализации
<a...><span>[text]</span></a>
ИЛИ - вы можете использовать jQuery, чтобы найти все якоря (возможно, с заданным классом) и вставить диапазон за вас.
Проблема с пользовательским элементом управления / настраиваемым элементом управления заключается в том, что мы хотим переопределить только визуализацию, а не функциональность. С пользовательским элементом управления / настраиваемым элементом управления нам придется воссоздать все методы / свойства, а затем передать их базовому элементу управления.
Создайте Веб-контроль, который унаследовал бы от LinkButton и только отвергать метода RenderContents.
Это довольно просто, и вам не нужно дублировать какой-либо код или повторно реализовывать какие-либо функции. Конечно, полезно использовать исходный код .NET Framework, чтобы взглянуть на исходную реализацию.
Проблема с этим подходом заключается в том, что требуется изменить все ссылки в проекте для нового элемента управления, но спасибо за предложение.
Возможное решение с использованием адаптера
Мы создали адаптер для кнопки ссылки. Затем изменил RenderContents следующим образом:
protected override void Render(HtmlTextWriter writer) {
LinkButton linkButton = this.Control;
linkButton.Text = String.Concat("<span>", linkButton.Text, "</span>");
base.Render(writer);
}
Кажется, это работает и требует минимум усилий.
Мне нужно немного изменить рендеринг элемента управления.