Originariamente inviato da djciko
imposta la proprieta' DataKeyField del tuo datagrid:
codice:DataKeyField="nome_campo_id"
...e, allo scatenarsi di un evento generato da un controllo figlio del datagrid (che per il bubbling 'sale' fino al naso dello stesso), recupera l'ID nell'evento tuaGrid_ItemCommand così: (in VB)
con e.CommandArgument invece ottieni il valore impostato nella proprieta' CommandArgument del controllo figlio, quindi uno qualsiasi della tua query...codice:Public Sub tuaGrid_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles tuaGrid.ItemCommand Select Case e.CommandName Case "uno" TuaSub(tuaGrid.DataKeys(e.Item.ItemIndex)) Case "due" Tuasub(tuaGrid.DataKeys(e.Item.ItemIndex)) End Select End Sub
Il controllo figlio quindi, potrebbe essere questo (in una Templatecolumn - Itemtemplate)
codice:<asp:LinkButton Text="uno" CommandArgument='<%# Container.DataItem("nomecampo")%>' CommandName="uno" Runat="server"></asp:LinkButton> <asp:LinkButton Text="due" CommandArgument='<%# Container.DataItem("nomecampo")%>' CommandName="due" Runat="server"></asp:LinkButton>
Innanzitutto grazie per le risposte...
non ho capito bene il discorso del controllo figlio del datagrid.
Dove andrebbe posizionato?
Questo è il body della mia pagina aspx
codice:<body MS_POSITIONING="GridLayout"> <form id="Form1" method="post" runat="server"> <asp:datagrid id="MyDataGrid" style="Z-INDEX: 101; LEFT: 16px; POSITION: absolute; TOP: 40px" runat="server" BorderColor="#999999" BorderStyle="None" BorderWidth="1px" BackColor="White" CellPadding="3" GridLines="Vertical"> <FooterStyle ForeColor="Black" BackColor="#CCCCCC"></FooterStyle> <SelectedItemStyle Font-Bold="True" ForeColor="White" BackColor="#008A8C"></SelectedItemStyle> <AlternatingItemStyle BackColor="Gainsboro"></AlternatingItemStyle> <ItemStyle ForeColor="Black" BackColor="#EEEEEE"></ItemStyle> <HeaderStyle Font-Bold="True" ForeColor="White" BackColor="#000084"></HeaderStyle> <PagerStyle HorizontalAlign="Center" ForeColor="Black" BackColor="#999999" Mode="NumericPages"></PagerStyle> </asp:datagrid><asp:textbox id="txtTitolo" style="Z-INDEX: 102; LEFT: 456px; POSITION: absolute; TOP: 48px" runat="server" Width="200px"></asp:textbox> <asp:Label id="lblTitolo" style="Z-INDEX: 103; LEFT: 456px; POSITION: absolute; TOP: 168px" runat="server" Width="248px"></asp:Label> <asp:TextBox id="txtGenere" style="Z-INDEX: 104; LEFT: 456px; POSITION: absolute; TOP: 80px" runat="server" Width="200px"></asp:TextBox> </form> </body>

Rispondi quotando