none
¿Como obtengo el valor de un label en gridview y y usar el controlador? RRS feed

  • Pregunta

  • Muy buenas, tengo 2 preguntas sobre el uso de un label llamado lblEstado en un Gridview.

    1. ¿Como uso o llamo en aspx.cs el label que se encuentra en ella?
    2. ¿Como obtengo su valor?

    Para empezar a trabajar en una condición similar a esta;

    si su valor es = 1

    lblEstado.CssClass = "btn btn-sucess";

    si su valor es = 2

    lblEstado.CssClass = "btn btn-warning";

    si su valor es = 3

    lblEstado.CssClass = "btn btn-danger";

     <asp:GridView runat="server" ID="gvBugs"  AutoGenerateColumns="False" class="table table-striped projects" AllowPaging="True"  EmptyDataText="No se han encontrado registros para mostrar"  OnPageIndexChanging="PageIndexChanging">  
    <Columns>
    <asp:TemplateField HeaderText="Acción">
    <ItemTemplate>
    <asp:LinkButton ID="lnkedit"  class="btn btn-primary btn-xs"  runat="server"  CommandArgument='<%# Eval("ID") %>' OnClick="lnk_Asignar"><i class="fa fa-folder"> View </i></asp:LinkButton> 
    </ItemTemplate>
    </asp:TemplateField >
    <asp:BoundField DataField="ID" HeaderText="# ID" />        <asp:BoundField DataField="NameArea" HeaderText="Area" />
    <asp:BoundField DataField="Creador" HeaderText="Reportado por" />
    <asp:BoundField DataField="Titulo" HeaderText="Resumen" />  <asp:BoundField DataField="Categoria HeaderText="Categoria" />
    <asp:BoundField DataField="Asignadoby" HeaderText="Asignado Por" NullDisplayText="Sin Asignar"/>
    <asp:BoundField DataField="AsignadoTo" HeaderText="Asignado Para" NullDisplayText="Sin Asignar"/> 
    <asp:TemplateField HeaderText="Prioridad"> 
    <ItemTemplate>
    <asp:Label ID="lblPrioridad" runat="server" class="btn btn-success btn-xs" Text='<%#Eval("NamePrioridad") %>' > 
    </asp:Label>
    </ItemTemplate>
    </asp:TemplateField >
    <asp:TemplateField HeaderText="Estado">
    <ItemTemplate>
    <asp:Label ID="lblEstado" runat="server" class="btn btn-success btn-xs" Text='<%#Eval("NameEstado") %>' >  </asp:Label>
    </ItemTemplate>
    </asp:TemplateField >
    <asp:BoundField DataField="CreationDate" HeaderText="Reportado el dia" />                <asp:BoundField DataField="ResolucionDate" HeaderText="Resuelto el dia" NullDisplayText="N/A"/>                        </Columns>    </asp:GridView>



    • Editado Nweryder domingo, 3 de marzo de 2019 21:16
    domingo, 3 de marzo de 2019 21:12

Respuestas

  • Puedes usar el Eval en el atributo class (o CssClass) de la misma manera que lo usas en el Text. En el siguiente ejemplo voy a presumir que programas en C#, pero si usas VB.NET puedes aplicar el mismo principio usando IIF.

    <asp:Label ID="lblEstado" runat="server" class='<%#Eval("NameEstado")==1?"btn btn-sucess":(Eval("NameEstado")==2?"btn btn-warning":"btn btn-danger")%>' Text='<%#Eval("NameEstado") %>' >  </asp:Label>

    Nota: Lo he escrito de memoria y puede que tenga algún errorcillo. No se trata de que lo copies al pie de la letra sino de que te sirva de inspiración para hacerte una idea del tipi de expresiones que podrías meter.

    • Propuesto como respuesta Pablo RubioModerator lunes, 4 de marzo de 2019 4:22
    • Marcado como respuesta Nweryder lunes, 4 de marzo de 2019 5:02
    domingo, 3 de marzo de 2019 21:24

Todas las respuestas

  • Puedes usar el Eval en el atributo class (o CssClass) de la misma manera que lo usas en el Text. En el siguiente ejemplo voy a presumir que programas en C#, pero si usas VB.NET puedes aplicar el mismo principio usando IIF.

    <asp:Label ID="lblEstado" runat="server" class='<%#Eval("NameEstado")==1?"btn btn-sucess":(Eval("NameEstado")==2?"btn btn-warning":"btn btn-danger")%>' Text='<%#Eval("NameEstado") %>' >  </asp:Label>

    Nota: Lo he escrito de memoria y puede que tenga algún errorcillo. No se trata de que lo copies al pie de la letra sino de que te sirva de inspiración para hacerte una idea del tipi de expresiones que podrías meter.

    • Propuesto como respuesta Pablo RubioModerator lunes, 4 de marzo de 2019 4:22
    • Marcado como respuesta Nweryder lunes, 4 de marzo de 2019 5:02
    domingo, 3 de marzo de 2019 21:24
  • Gracias por la idea, no tenia conocimiento de esa clase de condiciones. Muchas gracias!
    lunes, 4 de marzo de 2019 5:02