Originariamente inviato da webbondo
ho aggiunto la colonna in quell'evento perche mi serviva aggiungere una colonna con un link che si portasse nella querystring l'id del prodotto che in quel momento viene aggiunto al gridview tramite il binding...
Altrimenti come potevo fare?
Con la proprieta' DataKeyNames del Gridview. Assegnandole l'ID sorgente.
codice:
<asp:GridView ID="gdview" runat="server" AutoGenerateColumns="False" DataKeyNames="CategoryID" ................
Una colonna alla fine con un controllo link, e nell'evento appropriato, recuperando l'ID prendendolo da questa collection.
Guarda questo esempio
http://www.codedigest.com/Articles/A..._datakeys.aspx
....ed in particolare questa sub:
codice:
protected void gdview_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
int catid = int.Parse(gdview.DataKeys[0].Value.ToString());
SqlConnection conn = new SqlConnection("Data Source='localhost';Initial Catalog='Northwind';Integrated Security=SSPI;Persist Security Info=False ");
SqlDataAdapter da = new SqlDataAdapter("", conn);
conn.Open();
da.DeleteCommand = new SqlCommand("delete from Categories where CategoryID="+catid, conn);
da.DeleteCommand.ExecuteNonQuery();
conn.Close();
bindgrid();
}