99 messaggi dal 21 aprile 2007
Salve boys

ho 2 LINK BUTTON in un gridview..per ogni riga devono essere abilitati in base ad un valore flag di un altro campo ho fatto così

gridview


 <asp:GridView >
                                                
<Columns>
                                                  
<asp:TemplateField Visible="true">
<ItemTemplate>

<asp:LinkButton ID="ins" runat="server" CommandName="LINK1" Visible="true" OnClick="INS" >
</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>

<asp:TemplateField Visible="true">
<ItemTemplate>
<asp:LinkButton  ID="elim" runat="server" CommandName="LINK2" Visible="true" OnClick="ELIM" >
</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
                                                    
                                                 
<asp:BoundField DataField="CAMPO FLAG" HeaderText="CAMPO FLAG" Visible="false" />

</Columns>
</asp:GridView>


CODICE :


protected void INS(Object sender, EventArgs e)
        {

            if (txtCAMPOFLAG.Text != "" || txtCAMPOFLAG.Text != "no")
            {

                //grv.FindControl("LINK1").Visible = false;
                //grv.FindControl("LINK2").Visible = true;

       
                grv.Columns[1].Visible = false;
                grv.Columns[2].Visible = true;


            }

        }


        protected void ELIM(Object sender, EventArgs e)
        {
            if (txtCAMPOFLAG.Text != "" || txtCAMPOFLAG.Text == "si")
            {

                //grv.FindControl("LINK2").Visible = false;
                //grv.FindControl("LINK1").Visible = true;

                grv.Columns[1].Visible = true;
                grv.Columns[2].Visible = false;

            }
        }




però in questo modo nasconde o visualizza la colonna di tutta la gridview..la mia domanda è come fare la stessa cosa ma solo per la cella a ppartennte alla riga interessata?
432 messaggi dal 31 gennaio 2007
scusa ma usa il metodo rowdatabound...
e recupera i il campo textFalg ed i due button poi li visualizzi o meno..
es:
innanzi tutti converti il bound in template

<asp:TemplateField Visible="true">
<ItemTemplate>
<asp:TextBoxID="txtCAMPOFLAG" runat="server"Visible="true" Text='<%# Eval("nomecampo") %>' />
</ItemTemplate>
</asp:TemplateField>

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
TextBox _txtCAMPOFLAG= (TextBox)e.Row.FindControl("txtCAMPOFLAG");
LinkButton _ins = (LinkButton)e.Row.FindControl("ins");
LinkButton _elim = (LinkButton)e.Row.FindControl("elim");
if (_txtCAMPOFLAG.Text != "" || _txtCAMPOFLAG.Text != "no")
{
_ins.Visible = true;
_elim.Visible = false;
}
else
{
_ins.Visible = false;
_elim.Visible = true;
}
}
}

spero che ti sia utile...

ciao
}
99 messaggi dal 21 aprile 2007
ciao zaffo...ti ringrazio!proverò subito! : )
99 messaggi dal 21 aprile 2007
provato ma nn funziona..mi sfugge qualcosa..si cmq è come mi suggerisci tu ma mi sfugge qualcosa
432 messaggi dal 31 gennaio 2007
hai inserito nel tag iniziale la chiamata?

<asp:GridView onRowDataBound="GridView1_RowDataBound">

altrim posta il codice del grid...

ciao
99 messaggi dal 21 aprile 2007
zaffoo ha scritto:
hai inserito nel tag iniziale la chiamata?

<asp:GridView onRowDataBound="GridView1_RowDataBound">

altrim posta il codice del grid...

ciao


yes ovvio
posta il codice che stai utilizzando e specifica se ricevi una particolare eccezione

ciao marco
Modificato da nostromo il 14 luglio 2008 10.03 -

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
432 messaggi dal 31 gennaio 2007
non è che il problema sta in quello che ritorna dalla textbox?
e se usasti un checkbox con la

if (_ckbox.Checked){}

ciao

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.