Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions .claude/settings.local.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"permissions": {
"allow": [
"mcp__microsoft_docs__microsoft_docs_search",
"Bash(dotnet tool *)",
"Bash(docfx docs/docfx.json)",
"mcp__microsoft_docs__microsoft_code_sample_search",
"mcp__context7__resolve-library-id",
"mcp__context7__query-docs"
]
}
}
2 changes: 1 addition & 1 deletion .config/dotnet-tools.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"isRoot": true,
"tools": {
"csharpier": {
"version": "1.0.1",
"version": "1.2.6",
"commands": [
"csharpier"
],
Expand Down
5 changes: 5 additions & 0 deletions BannedSymbols.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
// https://github.com/dotnet/roslyn-analyzers/blob/main/src/Microsoft.CodeAnalysis.BannedApiAnalyzers/BannedApiAnalyzers.Help.md
// RS0030: Do not use banned APIs
T:System.DateTime;Don't use DateTime. Use DateTimeOffset instead.
P:System.DateTime.Now; Use System.DateTime.UtcNow instead.
M:System.DateTimeOffset.op_Implicit(System.DateTime); Do not implicitly cast DateTime to DateTimeOffset.
10 changes: 3 additions & 7 deletions Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,17 @@
<BuildToolsDirectory>$(RepositoryDirectory)build\</BuildToolsDirectory>
</PropertyGroup>
<PropertyGroup>
<Version>4.2.0</Version>
<Version>4.2.1</Version>
<AssemblyVersion>4.2.0</AssemblyVersion>
</PropertyGroup>
<PropertyGroup>
<Company>lepo.co</Company>
<Authors>lepo.co</Authors>
<Product>WPF-UI</Product>
<CommonTags>lepoco;toolkit;wpf;fluent;navigation;controls;design;icons;system;accent;theme;winui</CommonTags>
<CommonTags>ui;wpf;toolkit;fluent;navigation;controls;design;icons;uwp;xaml;xamarin;theme;winui;mvvm;mvc;core;web;webview;dotnet;desktop;wpf-ui</CommonTags>
<PackageLicenseExpression>MIT</PackageLicenseExpression>
<PackageRequireLicenseAcceptance>true</PackageRequireLicenseAcceptance>
<Copyright>Copyright (C) 2021-2025 Leszek Pomianowski and WPF UI Contributors</Copyright>
<Copyright>Copyright (C) 2021-2026 Leszek Pomianowski and WPF UI Contributors</Copyright>
<PackageProjectUrl>https://github.com/lepoco/wpfui</PackageProjectUrl>
<PackageReleaseNotes>https://github.com/lepoco/wpfui/releases</PackageReleaseNotes>
<PackageIcon>Icon.png</PackageIcon>
Expand All @@ -26,10 +26,6 @@
<SourceRoot Include="$(MSBuildThisFileDirectory)/" />
</ItemGroup>
<PropertyGroup>
<NuGetAudit>true</NuGetAudit>
<NuGetAuditLevel>moderate</NuGetAuditLevel>
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
<CentralPackageTransitivePinningEnabled>false</CentralPackageTransitivePinningEnabled>
<SuppressTfmSupportBuildWarnings>true</SuppressTfmSupportBuildWarnings>
<_SilenceIsAotCompatibleUnsupportedWarning>true</_SilenceIsAotCompatibleUnsupportedWarning>
</PropertyGroup>
Expand Down
8 changes: 7 additions & 1 deletion Directory.Build.targets
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,12 @@
<None Include="$(BuildToolsDirectory)nuget.png" Pack="true" PackagePath="\Icon.png" Visible="False" />
<None Include="$(RepositoryDirectory)ThirdPartyNotices.txt" Pack="true" PackagePath="\" Visible="False" />
<None Include="$(RepositoryDirectory)LICENSE.md" Pack="true" PackagePath="\LICENSE.md" Visible="False" />
<None Include="$(RepositoryDirectory)README.md" Pack="true" PackagePath="\README.md" Visible="False" />
</ItemGroup>
<ItemGroup Condition="'$(MSBuildProjectExtension)' != '.dcproj' and '$(MSBuildProjectExtension)' != '.sfproj' and '$(VisualStudioTemplateProject)' != 'true' and '$(VisualStudioExtensionProject)' != 'true'">
<PackageReference Include="Microsoft.CodeAnalysis.BannedApiAnalyzers">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>build; analyzers</IncludeAssets>
</PackageReference>
<PackageReference Include="AsyncFixer">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
Expand Down Expand Up @@ -56,6 +59,9 @@
<IncludeAssets>build; analyzers</IncludeAssets>
</PackageReference>
</ItemGroup>
<ItemGroup Condition="'$(MSBuildProjectExtension)' != '.dcproj' and '$(MSBuildProjectExtension)' != '.sfproj'">
<AdditionalFiles Include="$(MSBuildThisFileDirectory)BannedSymbols.txt" />
</ItemGroup>
<Target Name="AddCommitHashToAssemblyAttributes" BeforeTargets="GetAssemblyAttributes">
<ItemGroup>
<AssemblyAttribute
Expand Down
44 changes: 24 additions & 20 deletions Directory.Packages.props
Original file line number Diff line number Diff line change
@@ -1,38 +1,42 @@
<Project>
<PropertyGroup>
<ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
<CentralPackageTransitivePinningEnabled>false</CentralPackageTransitivePinningEnabled>
<NuGetAudit>true</NuGetAudit>
<NuGetAuditLevel>moderate</NuGetAuditLevel>
</PropertyGroup>
<ItemGroup>
<PackageVersion Include="AsyncFixer" Version="1.6.0" />
<PackageVersion Include="AwesomeAssertions" Version="9.3.0" />
<PackageVersion Include="CommunityToolkit.Mvvm" Version="8.4.0" />
<PackageVersion Include="AsyncFixer" Version="2.1.0" />
<PackageVersion Include="AwesomeAssertions" Version="9.4.0" />
<PackageVersion Include="CommunityToolkit.Mvvm" Version="8.4.2" />
<PackageVersion Include="coverlet.collector" Version="6.0.4" />
<PackageVersion Include="FlaUI.Core" Version="5.0.0" />
<PackageVersion Include="FlaUI.UIA3" Version="5.0.0" />
<PackageVersion Include="IDisposableAnalyzers" Version="4.0.8" />
<PackageVersion Include="Lepo.i18n.DependencyInjection" Version="2.0.0" />
<PackageVersion Include="Lepo.i18n.Wpf" Version="2.0.0" />
<PackageVersion Include="Lepo.i18n.DependencyInjection" Version="2.1.0" />
<PackageVersion Include="Lepo.i18n.Wpf" Version="2.1.0" />
<PackageVersion Include="Lepo.i18n" Version="2.0.0" />
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp" Version="4.12.0" />
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="10.0.0" />
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="10.0.0" />
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="18.0.0" />
<PackageVersion Include="Microsoft.SourceLink.GitHub" Version="8.0.0" />
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp" Version="5.3.0" />
<PackageVersion Include="Microsoft.CodeAnalysis.BannedApiAnalyzers" Version="3.3.4" />
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="10.0.7" />
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="10.0.7" />
<PackageVersion Include="Microsoft.SourceLink.GitHub" Version="10.0.203" />
<PackageVersion Include="Microsoft.VisualStudio.CoreUtility" Version="17.2.3194" />
<PackageVersion Include="Microsoft.VisualStudio.SDK" Version="17.12.4039" ExcludeAssets="runtime" />
<PackageVersion Include="Microsoft.VSSDK.BuildTools" Version="17.12.2069" />
<PackageVersion Include="Microsoft.Web.WebView2" Version="1.0.3595.46" />
<PackageVersion Include="Microsoft.Windows.CsWin32" Version="0.3.242" />
<PackageVersion Include="Microsoft.Windows.SDK.BuildTools" Version="10.0.26100.1742" />
<PackageVersion Include="Microsoft.Web.WebView2" Version="1.0.3912.50" />
<PackageVersion Include="Microsoft.Windows.CsWin32" Version="0.3.275" />
<PackageVersion Include="Microsoft.Windows.SDK.BuildTools" Version="10.0.28000.1721" />
<PackageVersion Include="NativeMethods" Version="0.0.3" />
<PackageVersion Include="NSubstitute" Version="5.3.0" />
<PackageVersion Include="PolySharp" Version="1.15.0" />
<PackageVersion Include="ReflectionEventing.DependencyInjection" Version="3.1.0" />
<PackageVersion Include="ReflectionEventing" Version="3.1.0" />
<PackageVersion Include="ReflectionEventing.DependencyInjection" Version="5.0.0" />
<PackageVersion Include="ReflectionEventing" Version="5.0.0" />
<PackageVersion Include="StyleCop.Analyzers" Version="1.2.0-beta.556" />
<PackageVersion Include="System.Drawing.Common" Version="10.0.0" />
<PackageVersion Include="System.Drawing.Common" Version="10.0.7" />
<PackageVersion Include="System.Memory" Version="4.6.3" />
<PackageVersion Include="System.ValueTuple" Version="4.5.0" />
<PackageVersion Include="System.ValueTuple" Version="4.6.2" />
<PackageVersion Include="WpfAnalyzers" Version="4.1.1" />
<PackageVersion Include="xunit.runner.visualstudio" Version="3.1.5" />
<PackageVersion Include="xunit.v3" Version="3.2.0" />
<PackageVersion Include="xunit" Version="2.9.3" />
<PackageVersion Include="xunit.v3" Version="3.2.2" />
</ItemGroup>
</Project>
29 changes: 10 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,19 +13,14 @@ WPF UI provides the Fluent experience in your known and loved WPF framework. Int

![ua](https://user-images.githubusercontent.com/13592821/184498735-d296feb8-0f9b-45df-bc0d-b7f0b6f580ed.png)

## 🛟 Support plans
## Support

To ensure you receive the expert guidance you need, we offer a variety of support plans designed to meet the diverse needs of our community. Whether you are looking to modernize your WPF applications or need assistance with our other libraries, our tailored support solutions are here to help. From priority email support to 24/7 dedicated assistance, we provide flexible plans to suit your project requirements.

[Take a look at the lepo.co support plans](https://lepo.co/support)
[Take a look at the lepo.co support plans](https://lepo.co/support)
[Sponsor WPF UI on GitHub](https://github.com/sponsors/pomianowski)

## 🤝 Help us keep working on this project

Support the development of WPF UI and other innovative projects by becoming a sponsor on GitHub! Your monthly or one-time contributions help us continue to deliver high-quality, open-source solutions that empower developers worldwide.

[Sponsor WPF UI on GitHub](https://github.com/sponsors/lepoco)

## 🚀 Getting started
## Getting started

For a starter guide see our [documentation](https://wpfui.lepo.co/documentation/).

Expand All @@ -43,35 +38,31 @@ winget install 'WPF UI'
The plugin for **Visual Studio 2022** let you easily create new projects using **WPF UI**.
<https://marketplace.visualstudio.com/items?itemName=lepo.wpf-ui>

## 📷 Screenshots
## Screenshots

![Demo App Sample](https://user-images.githubusercontent.com/13592821/166259110-0fb98120-fe34-4e6d-ab92-9f72ad7113c3.png)

![Monaco Editor](https://user-images.githubusercontent.com/13592821/258610583-7d71f69d-45b3-4be6-bcb8-8cf6cd60a2ff.png)

![Store App Sample](https://user-images.githubusercontent.com/13592821/165918914-6948fb42-1ee1-4c36-870e-65bb8ffe3c8a.png)

## 🏗️ Works with Visual Studio Designer
## Works with Visual Studio Designer

![VS2022 Designer Preview](https://user-images.githubusercontent.com/13592821/165919228-0aa3a36c-fb37-4198-835e-53488845226c.png)

## ❤️ Custom Tray icon and menu in pure WPF
## Custom Tray icon and menu in pure WPF

![WPF UI Tray menu in WPF](https://user-images.githubusercontent.com/13592821/166259470-2d48a88e-47ce-4f8f-8f07-c9b110de64a5.png)

## Custom Windows 11 SnapLayout available for TitleBar
## Custom Windows 11 SnapLayout available for TitleBar

![WPF UI Snap Layout for WPF](https://user-images.githubusercontent.com/13592821/166259869-e60d37e4-ded4-46bf-80d9-f92c47266f34.png)

## 📖 Documentation

Documentation can be found at <https://wpfui.lepo.co/>. We also have a [tutorial](#-getting-started) over there for newcomers.

## 🚧 Development
## Development

If you want to propose a new functionality or submit a bugfix, create a [Pull Request](https://github.com/lepoco/wpfui/compare/main...main) for the branch [main](https://github.com/lepoco/wpfui/tree/main).

## 📐 How to use?
## How to use?

First, your application needs to load custom styles, add in the **MyApp\App.xaml** file:

Expand Down
Loading
Loading