Freigeben über


Xamarin.Forms mit Visual Basic.NET

Xamarin unterstützt Visual Basic nicht direkt – befolgen Sie die Anweisungen auf dieser Seite, um eine C#Xamarin.Forms-Lösung zu erstellen und dann das .NET Standard C#-Projekt durch Visual Basic zu ersetzen.

Erstellen Sie eine Xamarin.Forms-Lösung, und ersetzen Sie dann das .NET Standard-Projekt durch Visual Basic.

Hinweis

Sie müssen Visual Studio unter Windows zum Programmieren mit Visual Basic verwenden.

Exemplarische Vorgehensweise für Xamarin.Forms mit Visual Basic

Führen Sie die folgenden Schritte aus, um ein einfaches Xamarin.Forms-Projekt zu erstellen, das Visual Basic verwendet:

  1. Wählen Sie in Visual Studio 2019 " Neues Projekt erstellen" aus.

  2. Geben Sie im Fenster "Neues Projekt erstellen" Xamarin.Forms ein, um die Liste zu filtern und "Mobile App (Xamarin.Forms)" auszuwählen, und drücken Sie dann "Weiter".

    Filtern nach Xamarin.Forms-Apps

  3. Geben Sie auf dem nächsten Bildschirm einen Namen für das Projekt ein, und drücken Sie " Erstellen".

  4. Wählen Sie die leere Vorlage aus, und drücken Sie OK:

    Leere Xamarin.Forms-Vorlage

    Dadurch wird eine Xamarin.Forms-Lösung in Visual Studio mit C# erstellt. Die nächsten Schritte ändern die Lösung so, dass Visual Basic verwendet wird.

  5. Klicken Sie mit der rechten Maustaste auf die Projektmappe, und wählen Sie " Neues Projekt hinzufügen > " aus...

  6. Geben Sie die Visual Basic-Bibliothek ein, um die Projektoptionen zu filtern, und wählen Sie die Option "Klassenbibliothek (.NET Standard) " mit dem Visual Basic-Symbol aus:

    Filtern nach Visual Basic-Bibliothek

  7. Geben Sie auf dem nächsten Bildschirm einen Namen für das Projekt ein, und drücken Sie " Erstellen".

  8. Klicken Sie mit der rechten Maustaste auf das Visual Basic-Projekt, und wählen Sie "Eigenschaften" aus, und ändern Sie dann den Standardnamespace so, dass er den vorhandenen C#-Projekten entspricht:

    Stellen Sie sicher, dass der Visual Basic-Stammnamespace der Xamarin.Forms-App entspricht.

  9. Klicken Sie mit der rechten Maustaste auf das neue Visual Basic-Projekt, und wählen Sie "NuGet-Pakete verwalten" aus, installieren Sie dann Xamarin.Forms , und schließen Sie das Paket-Manager-Fenster.

    Formulare und Schließen des Paket-Manager-Fensters

  10. Benennen Sie die Standarddatei Class1.vb in App.vb um:

    Benennen Sie die Standarddatei

  11. Fügen Sie den folgenden Code in die datei App.vb ein, die zum Ausgangspunkt Ihrer Xamarin.Forms-App wird:

    Imports Xamarin.Forms
    
    Public Class App
        Inherits Application
    
        Public Sub New()
            Dim label = New Label With {.HorizontalTextAlignment = TextAlignment.Center,
                                        .FontSize = Device.GetNamedSize(NamedSize.Medium, GetType(Label)),
                                        .Text = "Welcome to Xamarin.Forms with Visual Basic.NET"}
    
            Dim stack = New StackLayout With {
                .VerticalOptions = LayoutOptions.Center
            }
            stack.Children.Add(label)
    
            Dim page = New ContentPage
            page.Content = stack
            MainPage = page
    
        End Sub
    
    End Class
    
  12. Aktualisieren Sie die Android- und iOS-Projekte so, dass sie auf ein neues Visual Basic-Projekt verweisen (und nicht auf das von der Vorlage erstellte C#-Projekt). Klicken Sie mit der rechten Maustaste auf den Knoten "Verweise " in den Android- und iOS-Projekten, um den Verweis-Manager zu öffnen. Heben Sie die C#-Bibliothek auf, und markieren Sie die Visual Basic-Bibliothek (vergessen Sie nicht, dies sowohl für Android- als auch für iOS-Projekte).

    Entfernen eines alten Projektverweises, Hinzufügen eines Visual Basic-Verweises

  13. Löschen Sie das C#-Projekt. Fügen Sie neue .vb Dateien hinzu, um Ihre Xamarin.Forms-Anwendung zu erstellen. Eine Vorlage für neue ContentPages in Visual Basic wird unten gezeigt:

    Imports Xamarin.Forms
    
    Public Class Page2
    Inherits ContentPage
    
        Public Sub New()
            Dim label = New Label With {.HorizontalTextAlignment = TextAlignment.Center,
                                        .FontSize = Device.GetNamedSize(NamedSize.Medium, GetType(Label)),
                                        .Text = "Visual Basic ContentPage"}
    
            Dim stack = New StackLayout With {
                .VerticalOptions = LayoutOptions.Center
            }
            stack.Children.Add(label)
    
            Content = stack
        End Sub
    End Class
    

Einschränkungen von Visual Basic in Xamarin.Forms

Wie auf der Seite portable Visual Basic.NET angegeben, unterstützt Xamarin die Visual Basic-Sprache nicht. Dies bedeutet, dass es einige Einschränkungen gibt, an denen Sie Visual Basic verwenden können:

  • XAML-Seiten können nicht im Visual Basic-Projekt enthalten sein – der CodeBehind-Generator kann nur C# erstellen. Es ist möglich, XAML in eine separate, referenzierte C#-Klassenbibliothek einzuschließen und Datenbindung zu verwenden, um die XAML-Dateien über Visual Basic-Modelle aufzufüllen (ein Beispiel hierfür ist im Beispiel enthalten).

  • Benutzerdefinierte Renderer können nicht in Visual Basic geschrieben werden, sie müssen in C# in den nativen Plattformprojekten geschrieben werden.

  • Abhängigkeitsdienstimplementierungen können nicht in Visual Basic geschrieben werden, sie müssen in C# in den nativen Plattformprojekten geschrieben werden.