Ich muss mal nachfragen:
Dein Screenshot beinhaltet 2000 Paintboxen und jede Paintbox stellt eine Farbe dar? Ein "Pixel" repräsentiert quasi einen Chip?
Dann haben die Kollegen schon eine sinnvolle Lösung genannt.
Erzeuge ein Bitmap, kopiere das auf den Canvas und verwalte "virtuell" in einem Array wo sich welches Rechteck mit welchen Informationen befindet.
Über Mousemove ermittelst Du, die Daten welches Rechteckes eingeblendet werden müssen.
In ähnlicher Form habe ich mal einen kleinen
GUI-Test gebaut (Quellen habe ich aber nicht mehr).