Laden...

Wie kann ich nach einem Button-Click in Form 1 eine Picturebox in Form2 öffnen?

Erstellt von Leahim vor 3 Jahren Letzter Beitrag vor 3 Jahren 378 Views
L
Leahim Themenstarter:in
2 Beiträge seit 2020
vor 3 Jahren
Wie kann ich nach einem Button-Click in Form 1 eine Picturebox in Form2 öffnen?

Hallo zusammen,

ich bin neu hier und habe ein Problem und keine Lösung und hoffe ihr könnt mir helfen.

Ich habe eine Form1 und klicke dort im Menü auf den Button. Nun soll in der Form3 eine pictureBox ein bestimmtes Bild öffnen. Je nachdem auf welchen Button ich klicke. Ich habe insgesamt 6 Bilder und möchte sie entsprechend öffnen.

Schon mal vielen Dank im voraus. 🙂

Wenn Ihr noch Infos braucht oder irgendwelche Unklarheiten herrschen einfach melden.

Hier ist mein Code.

FORM1:

private void normalModeToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Form3 form3 = new Form3();
            form3.CustomValue = "pictureBox2.Image = Properties.Resources.Normal_Process_Mode;";
            //form3.CustomValue = "Resources.Normal_Process_Mode___Low_Side_Off_Mode";
            form3.Show();
            form3.Focus();
            form3.Text = "Normal Process Mode";
        }

FORM3:

public string CustomValue { get; set; }

private void Form3_Load(object sender, EventArgs e)
        {
            // pictureBox2.Image = Properties.Resources.Normal_Process_Mode___Low_Side_Off_Mode;
            this.Text = CustomValue;  
        }
309 Beiträge seit 2020
vor 3 Jahren

Ich verstehe zwar nicht genau was du vor hast, am einfachsten ist aber wahrscheinlich wenn du das Bild im Form3-Konstruktor übergibst:

Form3 form3 = new Form3("C:\mein_bild.jpg");

bzw. siehe hier: [FAQ] Kommunikation von 2 Forms

L
Leahim Themenstarter:in
2 Beiträge seit 2020
vor 3 Jahren

Danke schon einmal für die schnelle Antwort!

Ich habe meine Bilder in Resources abgelegt. Diese möchte je nachdem auf welchen Button ich klicke aufmachen.

Hier normalModeToolStripMenuItem_Click soll Bild1 aufgehen und hier normalProcessModeHighSideOffModeToolStripMenuItem1_Click soll Bild2 aufgehen. Aber eben in der Form3 und nicht in der Form1

Hmmm

 private void normalModeToolStripMenuItem_Click(object sender, EventArgs e)
             {
                      Form3 form3 = new Form3();
                      form3.CustomValue = "pictureBox2.Image = Properties.Resources.Normal_Process_Mode;";
                       //form3.CustomValue = "Resources.Normal_Process_Mode___Low_Side_Off_Mode";
                      form3.Show();
                      form3.Focus();
                      form3.Text = "Normal Process Mode";
             }

        public void normalProcessModeHighSideOffModeToolStripMenuItem1_Click(object sender, EventArgs e)
             {
                      Form3 form3 = new Form3();
                      form3.Show();
                      form3.Focus();
                      form3.Text = "Normal Process Mode + High Side Off Mode";

             } 

        private void normalProcessModeLowSideOffModeToolStripMenuItem1_Click(object sender, EventArgs e)
             {
                      Form3 form3 = new Form3();
                      form3.Show();
                      form3.Focus();
                      form3.Name = "Normal Process Mode + Low Side Off Mode";
                      //pictureBox1.Image = Properties.Resources.Normal_Process_Mode___Low_Side_Off_Mode;
             }
5.658 Beiträge seit 2006
vor 3 Jahren

Kannst du bitte deinen Code mit Code-Tags formatieren? Das läßt sich wesentlich besser lesen. Siehe [Hinweis] Wie poste ich richtig?

Du kannst auch die Resource im Konstruktor übergeben, anstatt dem Dateinamen.

Ganz allgemein dazu: [FAQ] Kommunikation von 2 Forms

Weeks of programming can save you hours of planning