FileOnQ.Prism.Popups.XCT
8.1.97-dev.1
dotnet add package FileOnQ.Prism.Popups.XCT --version 8.1.97-dev.1
NuGet\Install-Package FileOnQ.Prism.Popups.XCT -Version 8.1.97-dev.1
<PackageReference Include="FileOnQ.Prism.Popups.XCT" Version="8.1.97-dev.1" />
paket add FileOnQ.Prism.Popups.XCT --version 8.1.97-dev.1
#r "nuget: FileOnQ.Prism.Popups.XCT, 8.1.97-dev.1"
// Install FileOnQ.Prism.Popups.XCT as a Cake Addin #addin nuget:?package=FileOnQ.Prism.Popups.XCT&version=8.1.97-dev.1&prerelease // Install FileOnQ.Prism.Popups.XCT as a Cake Tool #tool nuget:?package=FileOnQ.Prism.Popups.XCT&version=8.1.97-dev.1&prerelease
FileOnQ.Prism.Popups.XCT
A community plugin for Prism Library built by and maintained by FileOnQ.
FileOnQ.Prism.Popups.XCT is a Prism Library plugin that adds Dialog API support to the Xamarin Community Toolkit Popup Control.
Status
This code is used by FileOnQ for our core mobile applications and we are committed to supporting this plugin. We have been using this plugin since 2019 with the original implementation of XCT Popups that was made by Andrew Hoefling.
The project is currently in the initial phase of transitioning the internal library to an open source project for the community. The table below shows the features we want to ship for the first stable release of this plugin.
1st Release Checklist
Phase | Status |
---|---|
Initial Code Drop | ✅ Done |
ContentView | ✅ Done |
DialogParameters Helpers | ✅ Done |
Attached Properties | Not Started |
Prism 8.1 | ✅ Done |
Prism 8.0 | Not Started |
Prism 7.2 | Not Started |
Prism 7.1 | Not Started |
NuGet Nightly | Not Started |
NuGet Releases | Not Started |
Setup
Add the NuGet to all shared code and platform code.
Add the following code to your RegisterTypes method in App.xaml.cs
protected override void RegisterTypes(IContainerRegistry containerRegistry)
{
containerRegistry.UseXctPopups();
}
Then when you want to show a popup resolve the IDialogService
. See detailed usage below.
Supported Platforms
The library is dependent on the Xamarin Community Toolkit's popup support. Please check the official documentation at their repository for target platform and versions.
Platform | Status |
---|---|
iOS | ✅ |
Android | ✅ |
UWP | ✅ |
Supported Libraries
Library | Version | Status |
---|---|---|
Xamarin Community Toolkit | 1.2.0+ | ✅ |
Prism Library | 8.1 | ✅ |
Prism Library | 8.0 | Not Started |
Prism Library | 7.2 | Not Started |
Prism Library | 7.1 | Not Started |
Usage
To display a Xamarin Community Toolkit popup you need to complete 2 actions
- Run setup method
UseXctPopups()
- Register your dialog
- Using the
IDialogService
display your popup
Run Setup Method
In your App.xaml.cs
you will need to add the following method to the RegisterTypes
method.
protected override void RegisterTypes(IContainerRegistry containerRegistry)
{
containerRegistry.UseXctPopups();
}
Register Dialog
Create a standard Xamarin Community Toolkit using the Popup
class.
SamplePopup.xaml
<?xml version="1.0" encoding="utf-8" ?>
<xct:Popup xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:xct="http://xamarin.com/schemas/2020/toolkit"
Size="250, 250"
x:Class="PrismPopupsSample.Views.SamplePopup">
<xct:Popup.Content>
<StackLayout>
<Label Text="Hello from XCT Popup!" />
</StackLayout>
</xct:Popup.Content>
</xct:Popup>
In your App.xaml.cs
you need to register your dialog with Prism.
containerRegistry.RegisterDialog<SamplePopup>("sample");
Show Popup
To display the popup you will need to resolve the IDialogService
and display it.
public class MainViewModel
{
IDialogService dialogService;
public MainViewModel(IDialogService dialogService) =>
this.dialogService = dialogService;
void ShowPopup() =>
this.dialogService.ShowDialog("sample");
}
Documentation
For complete documentation visit the official documentation.
Work in progess
Created By FileOnQ
This plugin was created by Andrew Hoefling and donated to the open source community by FileOnQ, Inc.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Prism.Forms (>= 8.1.97)
- Xamarin.CommunityToolkit (>= 1.2.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
8.1.97-dev.1 | 237 | 7/21/2021 |