In questo pezzo assegni ad Access.CommandText la query e guardi se l'assegnazione è vera?
Scusami ma questo non ha senso!
1) Assegna la query al controllo
2) ESEGUILA (questo pezzo di codice non la esegue per nulla)
3) Controlla se è andata a buon fine la query (qui non ti so aiutare non conosco questo controllo) e inserisci SOLO il controllo nell'IF
Ricorda MIS (Make It Simple) e RTFM (Read The Fucking Manual) sono 2 concetti da tenere sempre a mente...
Comunque sostituisci la query
"UPDATE DettOrdini set IDArticolo = @Codice, Quantità = @LblQuantità WHERE @Codice = IDArticolo;"
Con
"UPDATE DettOrdini set Quantità = @LblQuantità WHERE @Codice = IDArticolo;"
Riassegnare un valore UGUALE alla chiave primaria è inutile.
Tieni a mente anche che
1) ASSEGNI una STRINGA quando gli passi la query e NON LA ESEGUE SE NON GLI DICI DI ESEGUIRLA
2) Le musate a scrivere programmi le battono tutti programmatori FARE e STUDIARE, FARE e STUDIARE, non posso aiutarti di continuo