2012-06-04 2 views
1

У меня есть следующий код в пользовательский контрольВыражения не оцениваются

<td class="column <%# GetCssClass(SomeAttributes) %>" >

и он работает нормально, с правильным выходом класса CSS от метода GetCssClass. Но у меня есть некоторые другие клетки этой таблицы с помощью следующего кода

<td class="column <%# GetCssClass(SomeAttributes) %>" runat="server" Visible="<%# ShowColumn %>"

есть некоторые проблемы, и метод GetCssClass не оценивается, но вместо этого он буквально послали к выходу.

Любая помощь? (Я новый разработчик asp.net)

+1

Проблема 'visible' или' class' имеет проблему? (или оба ?). – Aristos

+1

Можете ли вы уточнить «есть ли какие-то проблемы»? Правильно ли установлено значение ShowColumn? –

+0

Извините, из-за небольшого количества данных. Видимая часть работает, только класс не работает. Кроме того, я попытался удалить класс «column» и, похоже, работает. Итак: '<тд класс = "колонка <% # GetCssClass (SomeAttributes)%>" Runat = "сервер" Visible = "<% # ShowColumn%>"' не выводит содержимое класса должным образом, но '

ответ

1

Когда мы пытаемся передать параметр/объект в runat="server" линии мы используем <%# ..%>

Вы можете использовать Visible="<%# ShowColumn %> где ShowColumn булева.

Как бы то ни было в этом случае class="column <%# GetCssClass(SomeAttributes) %>" вы не пытаетесь передать параметр, а строку, и для этого <%# GetCssClass(SomeAttributes) %> берется как строка.

Этот class="column <%# GetCssClass(SomeAttributes) %>" является преобразователем в строку и отображает как строку. Альтернативой для отображения строки возвращения GetCssClass, чтобы использовать <%= %>, которые преобразуют в строку значение и поместить его на HTML (не передается контроль)

Это class="<%# GetCssClass(SomeAttributes) %>" есть место в классе возвращение GetCssClass

Это Visible="<%# ShowColumn %>" место в видимой переменной значение ShowColumn.

+0

Но '

+0

@XaviIvars да, его работы, потому что у вас нет строки места раньше, поэтому остается объект. – Aristos

+0

Спасибо за ваш ответ! –

Смежные вопросы