|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
[C# / Linq]Utilizzare linq su "Controls"
Ciao a tutti
Volevo sapere come posso utilizzare (se si può) Linq su oggetti non legati ad una sorgente dati, per esempio una datagridview, una listview o altro. Ciò che vorrei provare a fare è una cosa del genere: Codice:
//senza Linq
foreach(DataGridViewRow row in grid.Rows)
{
if(r.Cells[1].Value == someValue)
faiQualcosa();
}
Grazie mille RaouL. EDIT: dimenticavo: sto provando in questo modo: Codice:
var result = from res in this.Controls.OfType<myGrid>().AsEnumerable().Where(grid => grid[colIndex, rowIndex].Value == "prova")
select res[colIndex, rowIndex].Value;
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
Ultima modifica di RaouL_BennetH : 22-10-2010 alle 23:12. |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Feb 2003
Città: Stockholm (SE)
Messaggi: 1343
|
Quote:
Codice:
public static class Exts
{
public static void ForEach<T>(this IEnumerable<T> seq, Action<T> command)
{ foreach(T item in seq) command(item); }
}
|
|
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
Quote:
Kralizek Il mio problema è questo: ho una griglia dalla quale devo prelevare e trattare i valori in questo modo: se il valore corrispondente alla colonna 9, per qualsiasi riga è True, devo prelevare i valori delle celle 2,3,4,5,6 per ciascuna riga verificata; se invece è settato a True il valore della colonna 10, per ciascuna riga, devo prelevare il contenuto della cella 8. Mi piacerebbe farlo con i "nuovi mezzi" perchè attualmente c'è una catena di "IF" che mi crea gli incubi solo a guardarla.....
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
|
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Sep 2004
Messaggi: 3967
|
Su msdn ho trovato anche un'altra soluzione:
Codice:
var test = this.Controls.OfType<DataGridView>()
.TakeWhile<DataGridView>(r => r.Rows[x].Cells[y].Value == someValue);
foreach(var prova in test)
{
faiQualcosa(prova);
}
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 06:11.












Kralizek








