Warum hast denn den den Code ausgelagert?
Wenn es darum geht, daß du allgemeingültige Klassen bzw. Methoden haben willst, so kannst du diese selbstverständlich erstellen. Du solltest dabei aber keinen Zugriff zu bestimmten Controls einer Form haben, sondern mittels Parametern bzw. Rückgabewerten arbeiten.
Du könntest z.B. deiner Methode das erstellte Image (img_green_play) zurückgeben lassen und dann
in der Form mittels
C#-Quelltext
1: 2: 3: 4: 5: 6: 7:
| pB_play.Image = MyFunctions.CreateImage(); MyFunction myFunctions = new MyFunctions(); pB_play.Image = myFunctions.CreateImage(); |
die Zuweisung durchführen.
Alternativ kannst du natürlich auch das Image (bzw. die PictureBox) als Parameter übergeben, falls du innerhalb der Methode darauf lesend zugreifen möchtest.
Bzgl. Kommunikation zwischen Forms bzw. Klassen kannst du dir auch mal meinen Artikel
Kommunikation von 2 Forms durchlesen.