Announcement

Collapse
No announcement yet.

Mehrere Events mit Schleife durchlaufen?

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

  • Mehrere Events mit Schleife durchlaufen?

    Hallo Leute,

    folgende Frage stelle ich mir nun schon etwas länger:

    wenn ich mehrere Events habe, die alle ungefähr das gleiche tun, ist es dann nicht möglich, jegliche gleiche Events mit einer Schleife zu durchlaufen?

    In meinem Beispiel möchte ich (erst mal) nur das nächste Steuerelement auswählen:

    [highlight=c#]this.SelectNextControl(ActiveControl, true, true, true, true);[/highlight]

    Diesen Code möchte ich für alle TextChanged und ValueChanged-Events aufrufen, sprich für alle Textboxen und NumericUpDowns:

    [highlight=c#] private void nudClaimNo_ValueChanged(object sender, EventArgs e)
    {
    this.SelectNextControl(ActiveControl, true, true, true, true);
    }

    private void nudClaimPosition_ValueChanged(object sender, EventArgs e)
    {

    }

    private void nudOrderNo_ValueChanged(object sender, EventArgs e)
    {

    }

    private void nudOrderPosition_ValueChanged(object sender, EventArgs e)
    {

    }

    private void tbCommittee_TextChanged(object sender, EventArgs e)
    {

    }

    private void nudNetworkPlan_ValueChanged(object sender, EventArgs e)
    {

    }

    private void rtbDescription_TextChanged(object sender, EventArgs e)
    {

    }[/highlight]

    Ist es möglich, die vielen Events irgendwie durch eine Schleife zusammenzufassen, um dadurch Code und Zeilen zu sparen?

    MfG
    Zuletzt editiert von kogen; 02.08.2016, 09:48. Reason: Passenden Code-Tag gesetzt

  • #2
    Schreibe den Event Handler mit obiger Zeile 1mal und hänge diesesen EventHandler dann einfach an alle gewünschten Events.

    Comment


    • #3
      Wow, es kann manchmal so einfach sein...

      Herzlichen Dank!

      Comment


      • #4
        Hallo,

        der Hintergrund ist, dass in .net Events per Delegaten umgesetzt sind. Genauer gesagt sind es MultiCastDelegates, d.h. dass ein Delegat mehrere "Ziele" haben kann. Daher können zu einem Event auch mehrere Event-Handler hinzugefügt werden.

        mfG Gü
        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

        Comment

        Working...
        X