asp:BoundField просмотр значений с условием
-
12-09-2019 - |
Вопрос
у меня есть dataview с:
<asp:BoundField DataField="AccontoAutorizzato" HeaderText="Acconto Aut."
SortExpression="AccontoAutorizzato" dataformatstring="{0:C}" />
возможно ли скрыть значения каждого из них с условием типа
Visible=<%# ((Int32)Eval("StatoID") < 2) %>
?
Спасибо
Решение
Это возможно при следующих условиях
<asp:TemplateField HeaderText="Acconto Aut." >
<ItemTemplate>
<asp:Label ID="lbl" runat="server" Text='<%# Bind"AccontoAutorizzato") %>'
Visible='<%# ((int)(Eval("StatoID")) < 2) %>' />
</ItemTemplate>
</asp:TemplateField>
Другие советы
Ответ Саара у меня не сработало, потому что, хотя привязка должна возвращать значение true или false , интерпретатор фактически не смог преобразовать результат условия в логическое значение.
Поэтому вместо этого я использовал явный выбор Boolean
ценности:
<asp:TemplateField HeaderText="Acconto Aut." >
<ItemTemplate>
<asp:Label ID="lbl" runat="server" Text='<%# Bind"AccontoAutorizzato") %>'
Visible='<%# ((int)(Eval("StatoID")) < 2) ? Convert.ToBoolean(0) : Convert.ToBoolean(1) %>' />
</ItemTemplate>
</asp:TemplateField>
Я надеюсь, что это облегчает задачу другим, кто борется с логической ошибкой при применении ее к видимому свойству.
Не связан с StackOverflow