asp: BoundField visualizzare i valori con una condizione
-
12-09-2019 - |
Domanda
ho un dataview con:
<asp:BoundField DataField="AccontoAutorizzato" HeaderText="Acconto Aut."
SortExpression="AccontoAutorizzato" dataformatstring="{0:C}" />
è possibile nascondere i valori di ciascuno con una condizione come
Visible=<%# ((Int32)Eval("StatoID") < 2) %>
Grazie
Soluzione
E 'possibile con i seguenti
<asp:TemplateField HeaderText="Acconto Aut." >
<ItemTemplate>
<asp:Label ID="lbl" runat="server" Text='<%# Bind"AccontoAutorizzato") %>'
Visible='<%# ((int)(Eval("StatoID")) < 2) %>' />
</ItemTemplate>
</asp:TemplateField>
Altri suggerimenti
risposta di Saar non ha funzionato per me, perché anche se l'associazione dovrebbe restituire un vero o falso, l'interprete potrebbe in realtà non convertire il risultato condizione a un booleano valore.
Così, invece, ho usato una scelta esplicita di valori 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>
Spero che questo rende più facile per gli altri alle prese con l'errore booleana quando si applica ad una proprietà Visible.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow