Torna indietro   Hardware Upgrade Forum > Software > Programmazione

HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione
HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione
HONOR ha finalmente lanciato il suo nuovo flagship: Magic 8 Pro. Lo abbiamo provato a fondo in queste settimane e ve lo raccontiamo nella nostra recensione completa. HONOR rimane fedele alle linee della versione precedente, aggiungendo però un nuovo tasto dedicato all'AI. Ma è al suo interno che c'è la vera rivoluzione grazie al nuovo Snapdragon 8 Elite Gen 5 e alla nuova MagicOS 10
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata
Le webcam Insta360 Link 2 Pro e Link 2C Pro sono una proposta di fascia alta per chi cerca qualità 4K e tracciamento automatico del soggetto senza ricorrere a configurazioni complesse. Entrambi i modelli condividono sensore, ottiche e funzionalità audio avanzate, differenziandosi per il sistema di tracciamento: gimbal a due assi sul modello Link 2 Pro, soluzione digitale sul 2C Pro
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza
Motorola edge 70 porta il concetto di smartphone ultrasottile su un terreno più concreto e accessibile: abbina uno spessore sotto i 6 mm a una batteria di capacità relativamente elevata, un display pOLED da 6,7 pollici e un comparto fotografico triplo da 50 MP. Non punta ai record di potenza, ma si configura come alternativa più pragmatica rispetto ai modelli sottili più costosi di Samsung e Apple
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 22-10-2010, 22:49   #1
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
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();
}
Si può fare ? O meglio, Linq si può utilizzare anche in assenza di 'sorgente dati' ?

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.
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 22-10-2010, 23:13   #2
Kralizek
Senior Member
 
L'Avatar di Kralizek
 
Iscritto dal: Feb 2003
Città: Stockholm (SE)
Messaggi: 1343
Quote:
grid.Rows.OfType<DataGridViewRow>().Where( r => r.Cells[1].Value == someValue).ForEach( r => faiQualcosa(r));
dove l'ultimo ForEach è un extension method così definito:

Codice:
public static class Exts
{
    public static void ForEach<T>(this IEnumerable<T> seq, Action<T> command)
    { foreach(T item in seq) command(item); }
}
Kralizek è offline   Rispondi citando il messaggio o parte di esso
Old 23-10-2010, 00:04   #3
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Quote:
Originariamente inviato da Kralizek Guarda i messaggi
dove l'ultimo ForEach è un extension method così definito:

Codice:
public static class Exts
{
    public static void ForEach<T>(this IEnumerable<T> seq, Action<T> command)
    { foreach(T item in seq) command(item); }
}
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
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 23-10-2010, 00:47   #4
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
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
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


HONOR Magic 8 Pro: ecco il primo TOP del 2026! La recensione HONOR Magic 8 Pro: ecco il primo TOP del 2026! L...
Insta360 Link 2 Pro e 2C Pro: le webcam 4K che ti seguono, anche con gimbal integrata Insta360 Link 2 Pro e 2C Pro: le webcam 4K che t...
Motorola edge 70: lo smartphone ultrasottile che non rinuncia a batteria e concretezza Motorola edge 70: lo smartphone ultrasottile che...
Display, mini PC, periferiche e networking: le novità ASUS al CES 2026 Display, mini PC, periferiche e networking: le n...
Le novità ASUS per il 2026 nel settore dei PC desktop Le novità ASUS per il 2026 nel settore de...
AWS investe 1,2 miliardi in Italia. Coin...
La navicella cinese Shenzhou-20 con il f...
I piani Business ed Education di Google ...
Ceres-2 e Lunga Marcia 3B: la Cina falli...
Motorola edge 70 appena uscito e già in ...
ARC Raiders non si accontenta: nel 2026 ...
Germania, bonus per le auto elettriche d...
Nella causa OpenAI, Elon Musk rivendica...
DJI Osmo 360 in offerta su Amazon: video...
Canada: raggiunto accordo con la Cina, c...
500 terabyte di libri pirata per addestr...
Mandiant le pubblica rainbow table Net-N...
Robot aspirapolvere top di gamma al mini...
Changan prepara l'offensiva in Europa: 8...
Call of Duty rallenta: finisce l'era del...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 16:14.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v