2015-10-12 2 views
0

У меня есть gridview и поле команды, которое является ссылкой на страницу. Как заменить ссылку только текстом на основе поля в записи?применить условие в html на основе связанного поля

Вот код:

<asp:CommandField SelectText="View" ShowSelectButton="True"> 
         <ItemStyle Width="50px" /> 
        </asp:CommandField> 

Так что я хочу, чтобы заменить CommandField с «N/A» для записи, который полностью отвечает критериям по Дата < 2015. Где дата является полем в записи. Спасибо.

+0

код не показал с вопросом ... <жерех: CommandField SelectText = "Вид" ShowSelectButton = "True"> JRasmus

+0

Это теперь исправлено. –

ответ

0

Это задача, которая стоит настраиваемого поля шаблона. Я предлагаю иметь оба элемента управления в шаблоне и показывать либо одно, либо другое на основе вашего состояния. Что-то вроде этого:

<TemplateField> 
    <ItemTemplate> 
     <asp:Literal Text="N/A" runat="server" Visible='<%# ((DateTime)Eval("FieldName")).Year < 2015 %>'> 
     <asp:Button Text="View" CommandName="Select" runat="server" Visible='<%# (int)Eval("FieldName") >= 2015 %>'> 
    </ItemTemplate> 
</TemplateField> 

Так как вы можете видеть в буквальном смысле с N/A текст и кнопки в основном альтернативный видимость в зависимости от состояния.

+0

Андрей, это ты за свою помощь. Я теперь получаю Указанный приказ недействителен. ошибка. Я возвращаю тип данных int для года. Есть предположения? – JRasmus

+0

@JRasmus, конечно, просто введите результат eval в int. По какой-то причине я предположил, что это поле DateTime. См. Edit: – Andrei

+0

Andrei, вот строка кода: JRasmus