Announcement

Collapse
No announcement yet.

Methode mit Namen aufrufen

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

  • Methode mit Namen aufrufen

    Hallo an Alle,

    wie kann ich mit Hilfe eines Strings (dort ist der Methoden-Name gespeichert) eine vorhandene Methode aufrufen?

    Ziel: bei Beenden einer Anwendung die offenen Forms speichern (Size und Location) und beim nächsten Programm-Start wiederherstellen.
    Für jede Form existiert eine Methode.

    Habe schon Delegates und Reflection versucht, leider ohne Erfolg.

    Danke!

  • #2
    Hallo Gordan!

    Hier die Antwort auf deine Frage in Form eines kurzen Beispielprogramms:

    using System;
    using System.Reflection;

    namespace CallMethodByNameWithReflection
    {
    class MyClass
    {
    public void SayHello()
    {
    Console.WriteLine("Hello World!");
    }
    }

    class Program
    {
    public static void CallMethod(object o, string MethodName)
    {
    var t = o.GetType();
    var mi = t.GetMethod(MethodName);
    mi.Invoke(o, null);
    }

    static void Main(string[] args)
    {
    var c = new MyClass();
    CallMethod(c, "SayHello");
    }
    }
    }

    Hoffentlich hilft das!

    lg,
    Rainer

    PS.: Falls du mal dein C# Wissen testen möchtest, wirf doch einen Blick auf unser C# Quiz unter http://www.software-architects.com/T...T/Default.aspx.

    Comment


    • #3
      Hallo Rainer,

      vielen Dank für das Beispielprogramm!
      So komme ich weiter.

      Gruß
      Gordan

      Comment

      Working...
      X