Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.

Xamarin.Forms , .NET Framework ve .NET Core 3 üzerinde Windows Presentation Foundation (WPF) için önizleme desteğine sahiptir. Bu makalede, bir çözüme .NET Framework'i hedefleyen bir Xamarin.Forms WPF projesinin nasıl ekleneceği gösterilmektedir.
Önemli
Xamarin.Forms WPF desteği topluluk tarafından sağlanır. Daha fazla bilgi için bkz Xamarin.Forms . Platform Desteği.
Başlamadan önce Visual Studio 2019'da yeni Xamarin.Forms bir çözüm oluşturun veya mevcut Xamarin.Forms bir çözümü kullanın.
WPF uygulaması ekleme
Windows 7, 8 ve 10 masaüstlerinde çalışacak bir WPF uygulaması eklemek için şu yönergeleri izleyin:
Visual Studio 2019'da, Çözüm Gezgini çözüm adına sağ tıklayın ve Yeni Proje Ekle...'yi > seçin.
Yeni proje ekle penceresinde, Diller açılan listesinde C#öğesini seçin, Platformlar açılan listesinde Windows'atıklayın ve Proje türü açılan listesinde Masaüstü'nü seçin. Proje türleri listesinde WPF Uygulaması (.NET Framework) öğesini seçin:

İleri düğmesine basın.
Not
Xamarin.Forms 4.7, .NET Core 3 üzerinde çalışan WPF uygulamaları için destek içerir.
Yeni projenizi yapılandırın penceresinde, WPF uzantısıyla proje için bir ad yazın, örneğin BoxViewClock.WPF. Gözat düğmesine tıklayın, BoxViewClock klasörünü seçin ve WPF projesini çözümdeki diğer projelerde olduğu gibi aynı dizine yerleştirmek için Klasör Seç'e basın:

Projeyi oluşturmak için Oluştur düğmesine basın.
Çözüm Gezgini yeni BoxViewClock.WPF projesine sağ tıklayın ve NuGet Paketlerini Yönet...'i seçin. Gözat sekmesini seçin ve için arama yapınXamarin.Forms. Platform.WPF:

Paketi seçin ve Yükle düğmesine tıklayın.
Çözüm Gezgini çözüm adına sağ tıklayın ve Çözüm için NuGet Paketlerini Yönet... seçeneğini belirleyin.Güncelleştirmeler sekmesini ve ardından paketi seçinXamarin.Forms. Tüm projeleri seçin ve aynı Xamarin.Forms sürüme güncelleştirin:

WPF projesinde, Başvurular'a sağ tıklayın ve Başvuru Ekle...'yi seçin. Başvuru Yöneticisi iletişim kutusunda, soldaki Projeler'i seçin ve BoxViewClock projesinin yanındaki onay kutusunu işaretleyin:

Tamam düğmesine basın.
WPF projesinin MainWindow.xaml dosyasını düzenleyin. etiketine
Windowiçin bir XML ad alanı bildirimi Xamarin.Formsekleyin. Platform.WPF derlemesi ve ad alanı:xmlns:wpf="clr-namespace:Xamarin.Forms.Platform.WPF;assembly=Xamarin.Forms.Platform.WPF"Şimdi etiketini olarak
Windowwpf:FormsApplicationPagedeğiştirin.TitleAyarı uygulamanızın adıyla değiştirin( örneğin BoxViewClock). Tamamlanan XAML dosyası şu şekilde görünmelidir:<wpf:FormsApplicationPage x:Class="BoxViewClock.WPF.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:BoxViewClock.WPF" xmlns:wpf="clr-namespace:Xamarin.Forms.Platform.WPF;assembly=Xamarin.Forms.Platform.WPF" mc:Ignorable="d" Title="BoxViewClock" Height="450" Width="800"> <Grid> </Grid> </wpf:FormsApplicationPage>WPF projesinin MainWindow.xaml.cs dosyasını düzenleyin. İki yeni
usingyönerge ekleyin:using Xamarin.Forms; using Xamarin.Forms.Platform.WPF;temel sınıfını
MainWindowolarakWindowFormsApplicationPagedeğiştirin. Çağrının ardındanInitializeComponentaşağıdaki iki deyimi ekleyin:Forms.Init(); LoadApplication(new BoxViewClock.App());Açıklamalar ve kullanılmayan
usingyönergeler dışında, MainWindows.xaml.cs dosyasının tamamı şu şekilde görünmelidir:using Xamarin.Forms; using Xamarin.Forms.Platform.WPF; namespace BoxViewClock.WPF { public partial class MainWindow : FormsApplicationPage { public MainWindow() { InitializeComponent(); Forms.Init(); LoadApplication(new BoxViewClock.App()); } } }Çözüm Gezgini WPF projesine sağ tıklayın ve Başlangıç Projesi Olarak Ayarla'yı seçin. Programı Windows masaüstünde Visual Studio hata ayıklayıcısıyla çalıştırmak için F5 tuşuna basın:

Platforma özgü özellikler
Uygulamanızın Xamarin.Forms hangi platformda çalıştığını koddan veya XAML'den belirleyebilirsiniz. Bu, WPF üzerinde çalışırken program özelliklerini değiştirmenize olanak tanır. Kodda değerini Device.RuntimePlatform sabit ile Device.WPF karşılaştırın ("WPF" dizesine eşittir). Eşleşme varsa, uygulama WPF üzerinde çalışır.
XAML'de, platforma OnPlatform özgü bir özellik değeri seçmek için etiketini kullanabilirsiniz:
<Button.TextColor>
<OnPlatform x:TypeArguments="Color">
<On Platform="iOS" Value="White" />
<On Platform="macOS" Value="White" />
<On Platform="Android" Value="Black" />
<On Platform="WPF" Value="Blue" />
</OnPlatform>
</Button.TextColor>
Pencere boyutu
WPF MainWindow.xaml dosyasında pencerenin ilk boyutunu ayarlayabilirsiniz:
Title="BoxViewClock" Height="450" Width="800"
Sorunlar
Bu bir önizlemedir, bu nedenle her şeyin üretime hazır olmamasını beklemeniz gerekir. için Xamarin.Forms tüm NuGet paketleri WPF için hazır değildir ve bazı özellikler tam olarak çalışmayabilir.
İlgili video
Xamarin.Forms 3.0 WPF destek videosu