Announcement

Collapse
No announcement yet.

Parameterübergabe zwischen MdiChild und "normaler Form"

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Parameterübergabe zwischen MdiChild und "normaler Form"

    Hallo,

    gibt es eine Möglichkeit Parameter zwischen MdiChild und normaler Form zu übergeben? Also von MdiChild zu Form ist ja klar, aber wieder zurück?!
    Wenn ich die Form schließe, lade ich das MdiChild nicht neu, sondern ich möchte, dass sich die Variable beim schließen des Forms an das MdiChild übergibt. Ist das möglich?

    Vielen Dank
    Kombu

  • #2
    Hi,

    du könntest der Form eine Referenz auf das MDI-Child übergeben. Dann kannst du von der Form auch auf das MDI-Child zugreifen. Oder du benutzte ein Event, dass beim schließen der Form geworfen wird und die Daten übergibt.
    "(...) deshalb mag ich Binärtechnik. Da gibt es nur drei Zustände: High, Low und Kaputt." (Wau Holland)

    Viele Grüße Novi

    Comment


    • #3
      Originally posted by Novi View Post
      Hi,

      du könntest der Form eine Referenz auf das MDI-Child übergeben. Dann kannst du von der Form auch auf das MDI-Child zugreifen. Oder du benutzte ein Event, dass beim schließen der Form geworfen wird und die Daten übergibt.
      Hi,

      An ein Event hatte ich auch schon gedacht. Ich weiß leider nicht, wie ich das anstellen soll. Was für ein Event soll ausgeführt werden und wie mache ich dann die Übergabe?
      Kannst du evtl. ein kleines Beispiel geben?

      Danke
      Kombu

      Comment


      • #4
        Hi,

        okay es gibt ein kleines Beispiel:


        [highlight=csharp]
        namespace MDI
        {
        public partial class Form1 : Form
        {
        public Form1()
        {
        InitializeComponent();
        }

        private void neuToolStripMenuItem_Click(object sender, EventArgs e)
        {
        Form2 newMDIChild = new Form2();
        newMDIChild.MdiParent = this;
        newMDIChild.Show();
        }

        }
        }
        [/highlight]

        [highlight=csharp]
        namespace MDI
        {
        public partial class Form2 : Form
        {
        public Form2()
        {
        InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
        Dialog1 Dialog = new Dialog1(textBox1.Text);
        if (DialogResult.OK == Dialog.ShowDialog())
        {
        textBox1.Text = Dialog.ExampleText;
        }

        }
        }
        }
        [/highlight]

        [highlight=csharp]
        namespace MDI
        {
        public partial class Dialog1 : Form
        {
        public string ExampleText;


        public Dialog1(string exampleText)
        {
        ExampleText = exampleText;
        InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
        this.DialogResult = DialogResult.OK;
        this.Close();
        }

        private void Dialog1_Load(object sender, EventArgs e)
        {
        textBox1.Text = ExampleText ;

        }

        private void Dialog1_FormClosed(object sender, FormClosedEventArgs e)
        {
        ExampleText = textBox1.Text;
        }


        }
        }
        [/highlight]

        [Edit]
        Das ist eine ganz andere aber viel bessere Lösung, als die, die ich oben genannt habe.
        Zuletzt editiert von Novi; 21.02.2010, 01:38.
        "(...) deshalb mag ich Binärtechnik. Da gibt es nur drei Zustände: High, Low und Kaputt." (Wau Holland)

        Viele Grüße Novi

        Comment


        • #5
          Vielen Dank. Es funktioniert wunderbar.
          Danke auch für die Bemühungen.

          Kombu

          Comment

          Working...
          X