DirectCast in c#

lunedì 16 marzo 2009 - 17.25

valerik Profilo | Junior Member

Ciao a tutti, mi aiutate a convertire in c# il seguente pezzo di codice?

For Each GR In GridView1.Rows
If DirectCast(GR.FindControl("chk2"), System.Web.UI.WebControls.CheckBox).Checked Then
a = Me.GridView1.Rows(GR.RowIndex).Cells(4).Text()
End If
Next

Ho provato cosi':

foreach (var GR in gwLiveUpdate.Rows)
{
if (((System.Web.UI.WebControls.CheckBox)GR.FindControl("chk2")).Checked)
{
imei = this.gwLiveUpdate.Rows(GR.RowIndex).Cells(1).Text();
version = this.gwLiveUpdate.Rows(GR.RowIndex).Cells(7).Text();

}

}

Ma ho errori su .FindControl, .Rows, .RowIndex

Ho sempre programmato in vb.net e ora sono un po' in difficolta'.

Grazie
valerik

alx_81 Profilo | Guru

>Ciao a tutti, mi aiutate a convertire in c# il seguente pezzo
>di codice?
Ciao

>Ma ho errori su .FindControl, .Rows, .RowIndex
dovresti dirci quali

>Grazie
di nulla!

--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

ysdemarc Profilo | Expert

foreach (int GR in GridView1.Rows) {
if (((System.Web.UI.WebControls.CheckBox)(GR.FindControl("chk2"))).Checked) {
a = this.GridView1.Rows(GR.RowIndex).Cells(4).Text();
}
}
Vincenzo
Programmatore sbilenco

alx_81 Profilo | Guru

non mi sono spiegato..
quali errori?
--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

valerik Profilo | Junior Member

Allora, gli errori sono i seguenti:

1)'object' does not contain a definition for 'FindControl' and no extension method 'FindControl' accepting a first argument of type 'object' could be found (are you missing a using directive or an assembly reference?)----->sulla parola chiave FindControl

2)Non-invocable member 'System.Web.UI.WebControls.GridView.Rows' cannot be used like a method.--->sulla parola chiave .Rows

3)'object' does not contain a definition for 'RowIndex' and no extension method 'RowIndex' accepting a first argument of type 'object' could be found (are you missing a using directive or an assembly reference?)sulla parola chiave .RowIndex
valerik

alx_81 Profilo | Guru

>1)'object' does not contain a definition for 'FindControl' and
>no extension method 'FindControl' accepting a first argument
>of type 'object' could be found (are you missing a using directive
>or an assembly reference?)----->sulla parola chiave FindControl
Problema di parentesi..

>2)Non-invocable member 'System.Web.UI.WebControls.GridView.Rows'
>cannot be used like a method.--->sulla parola chiave .Rows
Le chiavi per ricavare l'item dalle collezioni in C# vanno messe tra [...] e non tra (...).

>3)'object' does not contain a definition for 'RowIndex' and no
>extension method 'RowIndex' accepting a first argument of type
>'object' could be found (are you missing a using directive or
>an assembly reference?)sulla parola chiave .RowIndex
>valerik
Conseguenza dei precedenti. Eccoti il codice corretto:
foreach (GridViewRow GR in gwLiveUpdate.Rows) { if (((CheckBox)GR.FindControl("chk2")).Checked) { imei = gwLiveUpdate.Rows[GR.RowIndex].Cells[1].Text; version = gwLiveUpdate.Rows[GR.RowIndex].Cells[7].Text; } }
--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

valerik Profilo | Junior Member

Giusto!!!che distratto che sono...
Grazie, ancora
valerik
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5