56 messaggi dal 03 agosto 2005
Ciao a tutti,

sono nuovo alla programmazione con ASP.NET e sto riscontrando delle difficoltà nel recuperare i valori di una riga della gridview tramite un ButtonField.

Tramite postback dovrei recuperare il valore della colonna nascosta "id"

Immagino non sia una cosa complicata ma non riesco a capire come venirne fuori.
Ho provato a cercare in giro su internet ma non riesco a trovare una soluzione... :(


Qualcuno saprebbe darmi qualche dritta?

Questo è il codice della gridview:


<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataSourceID="SqlDataSource1" GridLines="None" ShowHeader="False" Width="280px">
<Columns>
<asp:BoundField DataField="id" HeaderText="id" InsertVisible="False"
ReadOnly="True" SortExpression="id" Visible="False" />
<asp:ButtonField DataTextField="cognome" HeaderText="cognome" Text="Pulsante" />
<asp:BoundField DataField="nome" HeaderText="nome" SortExpression="nome" />
<asp:BoundField DataField="interno" HeaderText="interno"
SortExpression="interno" />
</Columns>
</asp:GridView>


Grazie 1000 in anticipo per l'aiuto

Alex
66 messaggi dal 16 gennaio 2007
www.alfavictor.info
Ciao, ti posto quello che uso io. La griglia si chiama dgr. Sulla griglia ci sono anche i bottoni per la navigazione sul DataTable che la alimenta e su ogni riga i bottoni per le operazioni sulla riga selezionata.

Per prima cosa intercetto se si tratta di movimento sul DataTable (avanti, indietro, primo, ultimo)
Poi intercetto la riga della griglia selezionata e prendo il valore della casella che mi interessa (nel mio caso la terza indice = 2)
Poi prendo anche il valore del bottone su cui e' stato cliccato (nel mio caso ce ne sono due (variazione e cancellazione).
Eseguo le operazioni in funzione del bottone cliccato.
Sperando di esserti stato aiuto

Alberto

Protected Sub dgr_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles dgr.RowCommand

'Intercetto il tipo di comando passato (PagiRuolo o tipo Aggiornamento)

Dim bottone As String

bottone = e.CommandName

'PagiRuolo

If bottone = "Page" Then
Select Case e.CommandArgument
Case "Next"
Me.dgr.PageIndex = Me.dgr.PageIndex + 1
Case "Prev"
Me.dgr.PageIndex = Me.dgr.PageIndex - 1
Case "First"
Me.dgr.PageIndex = 0
Case "Last"
Me.dgr.PageIndex = dtMieSubCategorie.Rows.Count - 10
Case Else
Me.txtMsg = "Bottone Page errato" & e.CommandArgument
End Select
Me.dgr.DataSource = dtMieSubCategorie
Me.dgr.DataBind()
Exit Sub
End If

'Aggiornamento (Variazione o Cancellazione)

Dim i As Integer = Convert.ToInt32(e.CommandArgument)

'intercetto la riga della griglia selezionata

Dim row As GridViewRow = Me.dgr.Rows(i)

'Prendo il valore della seconda casella della riga

wIdMieSub = Server.HtmlDecode(row.Cells(2).Text)

'Prendo il valore del bottone su cui e' stato cliccato

bottone = e.CommandName

Select Case bottone
Case "Varia"
'Azione per la variazione
Case "Cancella"
'Azione per la cancellazione
Case Else
Me.txtMsg.Text = "Bottone non previsto"

End Select

End Sub

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.
Community
Ultimi messaggi
UTENTI ONLINE
In primo piano

I più letti di oggi

Media
In evidenza
MISC