Используя Databilder.eval () в стиле атрибута управления ASP.NET
-
26-09-2019 - |
Вопрос
У меня ASP.NET LinkButton внутри элемента управления повторителя ASP.NET, который отображает несколько кнопок ссылки. Я хочу установить стиль каждого и каждая ссылка на динамично.
Я пытаюсь
style="color:#6D7B8D;font-size:<%# DataBinder.Eval(Container.DataItem, "Title")%>;"
Но я получаю «Тег сервера не совсем создан» ошибка.
Есть идеи?
Решение
Мое понимание в том, что использование тегов сервера для атрибутов требует, чтобы тег сервера был использован для весь значение атрибута. Попробуйте изменить его к этому:
style='<%# "color:#6D7B8D;font-size:" + DataBinder.Eval(Container.DataItem, "Title") + ";" %>'
Обратите внимание, как весь атрибут стиля создан в C # код между тегами сервера.
Другие советы
Напишите это так:
style='color:#6D7B8D;font-size:<%# DataBinder.Eval(Container.DataItem, "Title")%>;'
С одной цитатами вместо двойных кавычек вокруг стиля
Удалять
<%# Databinder.Eval(Container.DataItem, "Title") %>
К:
Text='<%# Databinder.Eval(Container.DataItem, "Title") %>'
Мы также можем использовать тренарный оператор внутри него - на пользовательский размер шрифта
style='<%# "color:#6D7B8D;font-size:"Convert.ToInt32(DataBinder.Eval(Container.DataItem, "fontSize"))<5?"40":"30");" %>'
Не связан с StackOverflow