This is a custom build of Windows Presentation Foundation maintained by Faithlife.
The stable
branch (7.x) is based off the release/7.0
branch and is suitable to use with .NET 7.0 applications.
The master
branch is also currently 7.x but may eventually be updated to track .NET 8.0 for pre-release testing.
The Release Notes list the differences from the official release.
See the WPF Roadmap to learn about project priorities, status and ship dates.
To use Faithlife.Wpf, build a regular WPF application (dotnet new wpf
). Add the Faithlife WPF package feed
to your NuGet.config
:
<configuration>
<packageSources>
<add key="Faithlife WPF" value="https://pkgs.dev.azure.com/Faithlife/WPF/_packaging/Public/nuget/v3/index.json" />
</packageSources>
</configuration>
In your CSPROJ file, update the Microsoft.WindowsDesktop.App reference:
<ItemGroup>
<FrameworkReference Update="Microsoft.WindowsDesktop.App" RuntimeFrameworkVersion="7.0.6-faithlife.1.23255.3" />
</ItemGroup>
-
To build a dev package:
build.cmd -c Release -platform x64 -test -pack
- To use a unique version number, add
/p:OfficialBuildId=YYYYMMDD.BUILD
, e.g.,/p:OfficialBuildId=20230505.3
.
- To use a unique version number, add
-
All commits pushed to the
stable
branch will build a CI package that will be pushed to the Azure Artifacts feed. -
First time setup: If you have problems building for the first time, you may have an incorrect local VS 2022 configuration. To correct this:
- Run the
Visual Studio Installer
- In
More
menu for VS 2022, chooseImport configuration
select the fileDocumentation\wpf.vsconfig
- Follow the prompts to install everything needed
- Run the
-
Missing .net SDK: It is possible to not have the proper SDK for building. If the configuration update above doesn't resolve your build issue install the latest 6.0.xxx (currently
6.0.304
) from Microsoft's site.
- You can't just use the built package directly. This is only a first step compile that needs to be "repackaged" into a usable state.
- Ensure you're running Powershell 7.3.1 or later.
- In your root wpf folder run .\eng\Repackage.ps1
- Move the file located in
.\artifacts\packages\Release\Shipping\
To the location you store local testing nuget packages. - Update the version in your project to match the built version
7.0.6-dev.23255.3
Open an issue on this repo for problems specifically with this package. All other issues should be opened on dotnet/wpf.
WPF is licensed under the MIT license.