1
У меня есть следующий код в пользовательский контрольВыражения не оцениваются
<td class="column <%# GetCssClass(SomeAttributes) %>" >
и он работает нормально, с правильным выходом класса CSS от метода GetCssClass. Но у меня есть некоторые другие клетки этой таблицы с помощью следующего кода
<td class="column <%# GetCssClass(SomeAttributes) %>" runat="server" Visible="<%# ShowColumn %>"
есть некоторые проблемы, и метод GetCssClass не оценивается, но вместо этого он буквально послали к выходу.
Любая помощь? (Я новый разработчик asp.net)
Проблема 'visible' или' class' имеет проблему? (или оба ?). – Aristos
Можете ли вы уточнить «есть ли какие-то проблемы»? Правильно ли установлено значение ShowColumn? –
Извините, из-за небольшого количества данных. Видимая часть работает, только класс не работает. Кроме того, я попытался удалить класс «column» и, похоже, работает. Итак: '<тд класс = "колонка <% # GetCssClass (SomeAttributes)%>" Runat = "сервер" Visible = "<% # ShowColumn%>"' не выводит содержимое класса должным образом, но '
ответ
Когда мы пытаемся передать параметр/объект в
runat="server"
линии мы используем<%# ..%>
Вы можете использовать
Visible="<%# ShowColumn %>
гдеShowColumn
булева.Как бы то ни было в этом случае
class="column <%# GetCssClass(SomeAttributes) %>"
вы не пытаетесь передать параметр, а строку, и для этого<%# GetCssClass(SomeAttributes) %>
берется как строка.Этот
class="column <%# GetCssClass(SomeAttributes) %>"
является преобразователем в строку и отображает как строку. Альтернативой для отображения строки возвращения GetCssClass, чтобы использовать<%= %>
, которые преобразуют в строку значение и поместить его на HTML (не передается контроль)Это
class="<%# GetCssClass(SomeAttributes) %>"
есть место в классе возвращение GetCssClassЭто
Visible="<%# ShowColumn %>"
место в видимой переменной значение ShowColumn.источник
2012-06-04 10:38:31 Aristos
Но '
@XaviIvars да, его работы, потому что у вас нет строки места раньше, поэтому остается объект. – Aristos
Спасибо за ваш ответ! –
Смежные вопросы