ReadMe.md
Uno Platform port of Windows Community Toolkit
This port allows for Uno Platform based apps to use Windows Community Toolkit for WinUI 3 on Windows, iOS, macOS, Android, WebAssembly and Linux.
See below on this page for information about UWP.
The following packages are available:
- Uno.CommunityToolkit.Common
- Uno.CommunityToolkit.WinUI
- Uno.CommunityToolkit.WinUI.Connectivity
- Uno.CommunityToolkit.WinUI.DeveloperTools
- Uno.CommunityToolkit.WinUI.UI
- Uno.CommunityToolkit.WinUI.UI.Animations
- Uno.CommunityToolkit.WinUI.UI.Behaviors
- Uno.CommunityToolkit.WinUI.UI.Controls
- Uno.CommunityToolkit.WinUI.UI.Controls.Core
- Uno.CommunityToolkit.WinUI.UI.Controls.DataGrid
- Uno.CommunityToolkit.WinUI.UI.Controls.Input
- Uno.CommunityToolkit.WinUI.UI.Controls.Layout
- Uno.CommunityToolkit.WinUI.UI.Controls.Markdown
- Uno.CommunityToolkit.WinUI.UI.Controls.Media
- Uno.CommunityToolkit.WinUI.UI.Controls.Primitives
- Uno.CommunityToolkit.WinUI.UI.Media
Using the Uno Platform Windows Community Toolkit packages
These packages are providing support for the Uno Platform supported targets (iOS, Android, macOS, WebAssembly and Skia GTK/WPF/Tizen).
On Windows projects (the WinUI 3 Desktop head), please install the official Windows Community Toolkit packages for WinUI 3.
If you are building a library, use the following to conditionally include the toolkit builds:
<ItemGroup Condition="$(TargetFramework.Contains('windows10'))">
<PackageReference Include="CommunityToolkit.WinUI.Controls" Version="7.1.2" />
</ItemGroup>
<ItemGroup Condition="!$(TargetFramework.Contains('windows10'))">
<PackageReference Include="Uno.CommunityToolkit.WinUI.Controls" Version="7.1.200" />
</ItemGroup>
For example, using the default Uno template, you only need to add the following lines (as needed) to the class library <AppName>.csproj
. No changes are needed in each target separately (<AppName>.Wasm.csproj
, <AppName>.Windows.csproj
, etc.)
<ItemGroup Condition="$(TargetFramework.Contains('windows10'))">
<PackageReference Include="CommunityToolkit.Common" />
<PackageReference Include="CommunityToolkit.WinUI" />
<PackageReference Include="CommunityToolkit.WinUI.Connectivity" />
<PackageReference Include="CommunityToolkit.WinUI.DeveloperTools" />
<PackageReference Include="CommunityToolkit.WinUI.UI" />
<PackageReference Include="CommunityToolkit.WinUI.UI.Animations" />
<PackageReference Include="CommunityToolkit.WinUI.UI.Behaviors" />
<PackageReference Include="CommunityToolkit.WinUI.UI.Controls" />
<PackageReference Include="CommunityToolkit.WinUI.UI.Controls.Core" />
<PackageReference Include="CommunityToolkit.WinUI.UI.Controls.DataGrid" />
<PackageReference Include="CommunityToolkit.WinUI.UI.Controls.Input" />
<PackageReference Include="CommunityToolkit.WinUI.UI.Controls.Layout" />
<PackageReference Include="CommunityToolkit.WinUI.UI.Controls.Markdown" />
<PackageReference Include="CommunityToolkit.WinUI.UI.Controls.Media" />
<PackageReference Include="CommunityToolkit.WinUI.UI.Controls.Primitives" />
<PackageReference Include="CommunityToolkit.WinUI.UI.Media" />
</ItemGroup>
<ItemGroup Condition="!$(TargetFramework.Contains('windows10'))">
<PackageReference Include="Uno.CommunityToolkit.Common" />
<PackageReference Include="Uno.CommunityToolkit.WinUI" />
<PackageReference Include="Uno.CommunityToolkit.WinUI.Connectivity" />
<PackageReference Include="Uno.CommunityToolkit.WinUI.DeveloperTools" />
<PackageReference Include="Uno.CommunityToolkit.WinUI.UI" />
<PackageReference Include="Uno.CommunityToolkit.WinUI.UI.Animations" />
<PackageReference Include="Uno.CommunityToolkit.WinUI.UI.Behaviors" />
<PackageReference Include="Uno.CommunityToolkit.WinUI.UI.Controls" />
<PackageReference Include="Uno.CommunityToolkit.WinUI.UI.Controls.Core" />
<PackageReference Include="Uno.CommunityToolkit.WinUI.UI.Controls.DataGrid" />
<PackageReference Include="Uno.CommunityToolkit.WinUI.UI.Controls.Input" />
<PackageReference Include="Uno.CommunityToolkit.WinUI.UI.Controls.Layout" />
<PackageReference Include="Uno.CommunityToolkit.WinUI.UI.Controls.Markdown" />
<PackageReference Include="Uno.CommunityToolkit.WinUI.UI.Controls.Media" />
<PackageReference Include="Uno.CommunityToolkit.WinUI.UI.Controls.Primitives" />
<PackageReference Include="Uno.CommunityToolkit.WinUI.UI.Media" />
</ItemGroup>
Also, don't forget to add the corresponding package versions in Directory.Packages.props
:
<PackageVersion Include="Uno.CommunityToolkit.Common" Version="7.1.200" />
<PackageVersion Include="Uno.CommunityToolkit.WinUI" Version="7.1.200" />
<PackageVersion Include="Uno.CommunityToolkit.WinUI.Connectivity" Version="7.1.200" />
<PackageVersion Include="Uno.CommunityToolkit.WinUI.DeveloperTools" Version="7.1.200" />
<PackageVersion Include="Uno.CommunityToolkit.WinUI.UI" Version="7.1.200" />
<PackageVersion Include="Uno.CommunityToolkit.WinUI.UI.Animations" Version="7.1.200" />
<PackageVersion Include="Uno.CommunityToolkit.WinUI.UI.Behaviors" Version="7.1.200" />
<PackageVersion Include="Uno.CommunityToolkit.WinUI.UI.Controls" Version="7.1.200" />
<PackageVersion Include="Uno.CommunityToolkit.WinUI.UI.Controls.Core" Version="7.1.200" />
<PackageVersion Include="Uno.CommunityToolkit.WinUI.UI.Controls.DataGrid" Version="7.1.200" />
<PackageVersion Include="Uno.CommunityToolkit.WinUI.UI.Controls.Input" Version="7.1.200" />
<PackageVersion Include="Uno.CommunityToolkit.WinUI.UI.Controls.Layout" Version="7.1.200" />
<PackageVersion Include="Uno.CommunityToolkit.WinUI.UI.Controls.Markdown" Version="7.1.200" />
<PackageVersion Include="Uno.CommunityToolkit.WinUI.UI.Controls.Media" Version="7.1.200" />
<PackageVersion Include="Uno.CommunityToolkit.WinUI.UI.Controls.Primitives" Version="7.1.200" />
<PackageVersion Include="Uno.CommunityToolkit.WinUI.UI.Media" Version="7.1.200" />
<PackageVersion Include="CommunityToolkit.Common" Version="8.2.2" />
<PackageVersion Include="CommunityToolkit.WinUI" Version="7.1.2" />
<PackageVersion Include="CommunityToolkit.WinUI.Connectivity" Version="7.1.2" />
<PackageVersion Include="CommunityToolkit.WinUI.DeveloperTools" Version="7.1.2" />
<PackageVersion Include="CommunityToolkit.WinUI.UI" Version="7.1.2" />
<PackageVersion Include="CommunityToolkit.WinUI.UI.Animations" Version="7.1.2" />
<PackageVersion Include="CommunityToolkit.WinUI.UI.Behaviors" Version="7.1.2" />
<PackageVersion Include="CommunityToolkit.WinUI.UI.Controls" Version="7.1.2" />
<PackageVersion Include="CommunityToolkit.WinUI.UI.Controls.Core" Version="7.1.2" />
<PackageVersion Include="CommunityToolkit.WinUI.UI.Controls.DataGrid" Version="7.1.2" />
<PackageVersion Include="CommunityToolkit.WinUI.UI.Controls.Input" Version="7.1.2" />
<PackageVersion Include="CommunityToolkit.WinUI.UI.Controls.Layout" Version="7.1.2" />
<PackageVersion Include="CommunityToolkit.WinUI.UI.Controls.Markdown" Version="7.1.2" />
<PackageVersion Include="CommunityToolkit.WinUI.UI.Controls.Media" Version="7.1.2" />
<PackageVersion Include="CommunityToolkit.WinUI.UI.Controls.Primitives" Version="7.1.2" />
<PackageVersion Include="CommunityToolkit.WinUI.UI.Media" Version="7.1.2" />
Support for UWP
As the original Community Toolkit does, this fork also provides binaries for UWP, and the branch unorel/7.1
is used to provide this support.
The following packages are available from this branch:
- Uno.Microsoft.Toolkit
- Uno.Microsoft.Toolkit.Uwp
- Uno.Microsoft.Toolkit.Uwp.Connectivity
- Uno.Microsoft.Toolkit.Uwp.DeveloperTools
- Uno.Microsoft.Toolkit.Uwp.UI
- Uno.Microsoft.Toolkit.Uwp.UI.Animations
- Uno.Microsoft.Toolkit.Uwp.UI.Behaviors
- Uno.Microsoft.Toolkit.Uwp.UI.Controls
- Uno.Microsoft.Toolkit.Uwp.UI.Controls.Core
- Uno.Microsoft.Toolkit.Uwp.UI.Controls.DataGrid
- Uno.Microsoft.Toolkit.Uwp.UI.Controls.Input
- Uno.Microsoft.Toolkit.Uwp.UI.Controls.Layout
- Uno.Microsoft.Toolkit.Uwp.UI.Controls.Markdown
- Uno.Microsoft.Toolkit.Uwp.UI.Controls.Media
- Uno.Microsoft.Toolkit.Uwp.UI.Controls.Primitives
- Uno.Microsoft.Toolkit.Uwp.UI.Media
Using the Uno Platform Windows Community Toolkit packages for UWP
These packages are providing support for the Uno Platform supported targets (iOS, Android, macOS, WebAssembly and Skia GTK/WPF/Tizen).
On Windows projects (the UWP head), please install the official Windows Community Toolkit packages.
If you are building a library, use the following to conditionally include the toolkit builds:
<ItemGroup Condition="'$(TargetFramework)' == 'uap10.0.17763'">
<PackageReference Include="Microsoft.Toolkit.Uwp.Controls" Version="7.1.10" />
</ItemGroup>
<ItemGroup Condition="'$(TargetFramework)' != 'uap10.0.17763'">
<PackageReference Include="Uno.Microsoft.Toolkit.Uwp.Controls" Version="7.1.10" />
</ItemGroup>