Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    213

    c# condizione sul link di un gridview

    Ciao,in un grid view ho un campo link,devo però inserire la condizione che se il campo è 0 non deve apparire come link e deve essere di colore diverso,come posso fare?

  2. #2
    Utente di HTML.it L'avatar di dops
    Registrato dal
    Jul 2000
    Messaggi
    4,126

    Re: c# condizione sul link di un gridview

    Originariamente inviato da tonz79
    Ciao,in un grid view ho un campo link,devo però inserire la condizione che se il campo è 0 non deve apparire come link e deve essere di colore diverso,come posso fare?
    un pò di codice non farebbe male.. ma cmq credo che puoi provare ad agganciare la cella tramite un evento della gridview.. che ne sò.. durante il databinding della stessa ad esempio..
    Voglio l'alt+s anche per FF

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    213
    scusa ma sono alle prime armi e non ho ben capito.io ho questo gridview:
    codice:
    <asp:GridView align="center" ID="GridView1" runat="server" 
            AutoGenerateColumns="False" BackColor="White" BorderColor="#999999" 
            BorderStyle="None" BorderWidth="1px" CellPadding="3" 
            DataSourceID="SqlDataSource1" GridLines="Vertical">
            <FooterStyle BackColor="#CCCCCC" ForeColor="Black" />
            <RowStyle BackColor="#EEEEEE" ForeColor="#336699" Font-Names="Verdana" 
                Font-Size="8pt" HorizontalAlign="Center" />
            <Columns>
                <asp:BoundField DataField="TERRITORIO" HeaderText="TERRITORIO" 
                    SortExpression="TERRITORIO" />
                <asp:BoundField DataField="PREMIUM_CARE" HeaderText="PREMIUM CARE" 
                    SortExpression="PREMIUM_CARE" />
                <asp:HyperLinkField 
                    DataTextField="NdC_A_ESIGENZE" 
                    HeaderText="NOTE DI CREDITO ASSOCIATE A ESIGENZA"
                    DataNavigateUrlFields="TERRITORIO, PREMIUM_CARE" 
                    DataNavigateUrlFormatString="~/ndc_ent_dett_esigenza.aspx?terr={0}&gruppo={1}">
                    <ControlStyle Font-Bold="True"  ForeColor="#336699" Font-Names="Verdana" Font-Size="Smaller" />
                </asp:HyperLinkField>
                <asp:HyperLinkField 
                    DataTextField="NdC_A" HeaderText="TOTALE NOTE DI CREDITO" 
                    DataNavigateUrlFields="TERRITORIO, PREMIUM_CARE" 
                    DataNavigateUrlFormatString="~/ndc_ent_dett_totale.aspx?terr={0}&gruppo={1}">
                    <ControlStyle Font-Bold="True"  ForeColor="#336699" Font-Names="Verdana" Font-Size="Smaller" />
                </asp:HyperLinkField>
                <asp:BoundField DataField="kpi" HeaderText="KPI" SortExpression="kpi" />
            </Columns>
            <PagerStyle BackColor="#999999" ForeColor="Black" HorizontalAlign="Center" />
            <SelectedRowStyle BackColor="#008A8C" Font-Bold="True" ForeColor="White" />
            <HeaderStyle BackColor="#336699" Font-Bold="True" ForeColor="White" 
                Font-Names="Verdana" Font-Size="10pt" />
            <AlternatingRowStyle BackColor="white" />
    </asp:GridView>
    il link in questione è TOTALE NOTE DI CREDITO, come dovrei modificare la pagina aspx e come introduco la condizione nel cs?grazie mille!!!

  4. #4
    Utente di HTML.it L'avatar di dops
    Registrato dal
    Jul 2000
    Messaggi
    4,126
    devi utilizzare un evento del gridview.. tipo il RowDataBound, a questo indirizzo c'è un esempio: http://weblogs.asp.net/meligy/archiv...ng-events.aspx
    Voglio l'alt+s anche per FF

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    213
    l'esempio purtroppo non mi dice come posso appliccare la condizione solo ad una colonna del gridview e poi non so come togliere il link se vale 0, cmq mi è stato di iuto vedere quell'esempio

  6. #6
    Utente di HTML.it L'avatar di dops
    Registrato dal
    Jul 2000
    Messaggi
    4,126
    un esempio si chiama esempio appunto perchè ti mostra sommariamente quello puoi fare.. cmq te l'ho detto io.. devi usare l'evento RowDataBound ed è lì dentro che devi fare un semplicissimo controllo ad "esempio":
    codice:
    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
    ...
     if (e.Row.RowType == DataControlRowType.DataRow)        
    {
      if(e.Row.Cells[e.Row.RowIndex].Text == "quello che vuoi")
      e.Row.Cells[e.Row.RowIndex].Text = "quello che vuoi"
    }
    ..
    }
    il codice scritto sopra potrebbe essere sbagliato nella sintassi.. ma si tratta sempre di un "esempio" come quello che stà in quella pagina che ti ho inviato.. su un pò di sforzo..
    Voglio l'alt+s anche per FF

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    213
    ok grazie,se a qualcuno può servire posto il codice:
    .cs
    codice:
        protected void Page_Load(object sender, EventArgs e)
        {   }
            protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
            {
                if (e.Row.RowType == DataControlRowType.DataRow)
                {
                    if (e.Row.Cells[7].Text != "0")
                    {
                        e.Row.Cells[7].Text = "<a style=\"color: #FF3300\"  href=tme_esigenze_ent_fisso_dett2.aspx?esigenza=" + e.Row.Cells[2].Text + ">" + e.Row.Cells[7].Text + "</A>";
                    }
                }
            }
    nel .aspx la colonna l'ho messa come boundfield e non+come hyperlink e ho aggiunto:
    <asp:GridView OnRowDataBound="GridView1_RowDataBound">
    grazie mille!!!

  8. #8
    con il tuo codice xò se cambi la posizione delle colonne non funziona + niente! non è possibile indicare il nome della colonna che ti serve?
    la vita è un fulmine ma prenderlo nel culo è un lampo.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.