Condividi tramite


Xamarin.Forms con Visual Basic.NET

Xamarin non supporta direttamente Visual Basic. Seguire le istruzioni in questa pagina per creare una soluzione Xamarin.Forms C# C# e quindi sostituire il progetto C# .NET Standard con Visual Basic.

Creare una soluzione Xamarin.Forms e quindi sostituire il progetto .NET Standard con Visual Basic

Nota

È necessario usare Visual Studio in Windows per programmare con Visual Basic.

Procedura dettagliata di Xamarin.Forms con Visual Basic

Seguire questa procedura per creare un semplice progetto Xamarin.Forms che usa Visual Basic:

  1. In Visual Studio 2019 scegliere Crea un nuovo progetto.

  2. Nella finestra Crea un nuovo progetto digitare Xamarin.Forms per filtrare l'elenco e selezionare App per dispositivi mobili (Xamarin.Forms) e quindi premere Avanti.

    Filtrare per le app Xamarin.Forms

  3. Nella schermata successiva digitare un nome per il progetto e premere Crea.

  4. Scegliere il modello Vuoto e premere OK:

    Modello Xamarin.Forms vuoto

    Verrà creata una soluzione Xamarin.Forms in Visual Studio usando C#. I passaggi successivi modificano la soluzione per l'uso di Visual Basic.

  5. Fare clic con il pulsante destro del mouse sulla soluzione e scegliere Aggiungi > nuovo progetto...

  6. Digitare la libreria Visual Basic per filtrare le opzioni del progetto e scegliere l'opzione Libreria di classi (.NET Standard) con l'icona di Visual Basic:

    Filtro per la libreria di Visual Basic

  7. Nella schermata successiva digitare un nome per il progetto e premere Crea.

  8. Fare clic con il pulsante destro del mouse sul progetto Visual Basic e scegliere Proprietà, quindi modificare lo spazio dei nomi predefinito in modo che corrisponda ai progetti C# esistenti:

    Verificare che lo spazio dei nomi radice di Visual Basic corrisponda all'app Xamarin.Forms

  9. Fare clic con il pulsante destro del mouse sul nuovo progetto Visual Basic e scegliere Gestisci pacchetti NuGet, quindi installare Xamarin.Forms e chiudere la finestra di gestione pacchetti.

    Moduli e chiudere la finestra di gestione pacchetti

  10. Rinominare il file di Class1.vb predefinito in App.vb:

    Rinominare il file e la classe Class1 predefiniti in App

  11. Incollare il codice seguente nel file App.vb , che diventerà il punto di partenza dell'app Xamarin.Forms:

    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. Aggiornare i progetti Android e iOS in modo che facciano riferimento al nuovo progetto Visual Basic e non al progetto C# creato dal modello. Fare clic con il pulsante destro del mouse sul nodo Riferimenti nei progetti Android e iOS per aprire Gestione riferimenti. Deselezionare la libreria C# e selezionare la libreria Visual Basic (non dimenticare, eseguire questa operazione sia per i progetti Android che iOS).

    Rimuovere il riferimento al progetto precedente, aggiungere riferimenti a Visual Basic

  13. Eliminare il progetto C#. Aggiungere nuovi file .vb per compilare l'applicazione Xamarin.Forms. Di seguito è riportato un modello per i nuovi ContentPageoggetti in Visual Basic:

    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
    

Limitazioni di Visual Basic in Xamarin.Forms

Come indicato nella pagina Portable Visual Basic.NET, Xamarin non supporta il linguaggio Visual Basic. Ciò significa che esistono alcune limitazioni in cui è possibile usare Visual Basic:

  • Le pagine XAML non possono essere incluse nel progetto Visual Basic. Il generatore code-behind può compilare solo C#. È possibile includere XAML in una libreria di classi portabile C# separata, a cui si fa riferimento e usare il databinding per popolare i file XAML tramite modelli Visual Basic (un esempio di questo è incluso nell'esempio).

  • I renderer personalizzati non possono essere scritti in Visual Basic, ma devono essere scritti in C# nei progetti della piattaforma nativa.

  • Le implementazioni del servizio di dipendenza non possono essere scritte in Visual Basic, ma devono essere scritte in C# nei progetti della piattaforma nativa.