C# -> VB.Net

  • WPF

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von VB1963.

    Hallo Community,
    Wie übersetzt man die Zeile #7 im C#-Block nach VB.NET richtig?
    Mein Ansatz mit AddHandler bringt mich da nicht auf die richtige Richtung...
    (hab's nicht so recht in C#)

    C#-Quellcode

    1. class Program
    2. {
    3. [STAThread]
    4. public static void Main(string[] args)
    5. {
    6. MainWindow w = new MainWindow();
    7. w.Closed += delegate { Dispatcher.CurrentDispatcher.InvokeShutdown(); };
    8. w.Show();
    9. Dispatcher.Run();
    10. }
    11. }

    VB.NET-Quellcode

    1. Class Main
    2. <STAThread> _
    3. Public Shared Sub Main(args As String())
    4. Dim w As New MainWindow()
    5. 'AddHandler w.Closed, Dispatcher.CurrentDispatcher.InvokeShutdown
    6. w.Show()
    7. Dispatcher.Run()
    8. End Sub
    9. End Class

    Der Snippet Converter for .NET 4.0 spuckt mir da so etwas aus:
    w.Closed += Sub() Dispatcher.CurrentDispatcher.InvokeShutdown()
    funzt aber auch nicht...

    Lg
    VB1963

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „VB1963“ ()

    Hi @VB1963!

    Also soweit ich des noch weiß, musste nicht Dispatcher... sondern
    AddHandler w.Closed, AddressOf Dispatcher.CurrentDispatcher.InvokeShutdown
    machen.

    Edit: Hab mit des mit dem AddHandler + AddressOf noch ma durchgelesen, müsste so stimmen
    EditEdit: Schau ma hier vorbei
    In general (across programming languages), a pointer is a number that represents a physical location in memory. A nullpointer is (almost always) one that points to 0, and is widely recognized as "not pointing to anything". Since systems have different amounts of supported memory, it doesn't always take the same number of bytes to hold that number, so we call a "native size integer" one that can hold a pointer on any particular system. - Sam Harwell
    ohne KlammernAddHandler w.Closed, Sub()Dispatcher.CurrentDispatcher.InvokeShutdown
    Also der Snippet-Converter hat die anonyme Methode schon richtig übersetzt, kann aber keine c# - Delegat-Addition identifizieren, und entsprechend das AddHandler-Schlüsselwort generieren.

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „ErfinderDesRades“ ()