66 messaggi dal 16 gennaio 2007
www.alfavictor.info
In Vs2008 (Asp 3.5) utilizzavo il seguente codice per recuperare il valore di una cella di una GridView

campo = Me.GridView1.Rows(i).Cells("Codice").Value

ove i e' l'indice della riga selezionata e "Codice" e' il nome del campo rappresentato dalla cella

Ora in Vs2010 (Asp 4.0) sembra che la proprieta' Value non sia disponibile da cosa e' stata sostituita?

La gridview e' aliminata da un datatable passato a runtime

Grizie in anticipo

Alberto
da quanto ho capito tramite MSDN, la TableCell in 4.0 contiene oggetti e in quanto tale, dovresti passare per la proprietà Controls... in realtà in un esempio ho trovato un ToString() banale banale, magari prova prima questo e vedi se va...
66 messaggi dal 16 gennaio 2007
www.alfavictor.info
Ti ringrazio per la risposta.
Mi sono accorto di un altro problema.

Utilizzavo un'istruzione del tipo:
i = Me.GridView1.SelectedIndex

per ottenre l'indice della riga.

Mi viene restituito -1.

Questo nell'evendo CommandRow della griglia. Il codice che usavo e' il seguente:

Private Sub GridView1_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles GridView1.RowCommand

Dim bottone As String
Dim i As Integer
i = Me.GridView1.SelectedIndex
bottone = e.CommandName
Select Case bottone
Case "Varia"
wBottone = 1
wIdCodice = Me.Dgr.Rows(i).Cells("Codice").ToString
Dim frmIstatR As New frmIstatR
frmIstatR.ShowDialog()
Svuota()
Case "Cancella"
wBottone = 2
wIdCodice = Me.dgr.Rows(i).Cells("Codice").tostring
Dim frmIstatR As New frmIstatR
frmIstatR.ShowDialog()
Svuota()
Case Else
Me.txtMsg.Text = "Bottone non previsto"
End Select
End Sub

Qualsiasi suggerimento e' il benvenuto

Alberto
prova

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

Dim gvRow As GridViewRow = GridView1.Rows(index)
66 messaggi dal 16 gennaio 2007
www.alfavictor.info
Grazie
66 messaggi dal 16 gennaio 2007
www.alfavictor.info
Ringraziando ancora posto la soluzione che ho trovato:

Definizione della gridview:

<asp:GridView ID="GridView1" runat="server" AllowPaging="True" AllowSorting="True" AlternatingRowStyle-BackColor="#66FFFF" AutoGenerateColumns="False">
<AlternatingRowStyle BackColor="#66FFFF"></AlternatingRowStyle>
<Columns>
<asp:ButtonField commandName="Varia" Text="Varia" ButtonType="Image" ImageUrl="~/Images/IT_Varia.gif" />

<asp:ButtonField CommandName="Cancella" Text="Cancella" ButtonType="Image" ImageUrl="~/Images/IT_Cancella.gif" />

<asp:BoundField DataField="IdIstat" HeaderText="Codice Istat" />
<asp:BoundField DataField="txtIstat" HeaderText="Descrizione" />
</Columns>
</asp:GridView>

L'evento RowCommand:

Private Sub GridView1_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles GridView1.RowCommand


Dim bottone As String

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

Dim row As GridViewRow = Me.GridView1.Rows(i)
wIdIstat = Server.HtmlDecode(row.Cells(2).Text)

bottone = e.CommandName
Select Case bottone
Case "Varia"
Server.Transfer("forms/frmIstatR.aspx")
Case "Cancella"
Server.Transfer("forms/frmIstatR.aspx")
Case Else
Me.txtMsg.Text = "Bottone non previsto"
End Select
End Sub

Nota: Nella versione originale che funzionava in Aps 3.5 i due campi ButtonField della gridview erano dei TemplateItem contenenti dei ImageButton. In questa versione non funzionano e non viene passato l'indice della riga interessata nel CommandArgument. Ho dovuto percio' crearli come ButtonField di tipo "Image".

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