WPFDevelopers

WPFDevelopersOrgMIT活跃维护

面向 WPF 开发者的控件库,提供基础控件、自定义控件、截图控件、动画和主题等资源,帮助快速搭建桌面端 UI。

🎉 Welcome to follow the official account of "WPFDevelopers"! It covers the basic controls and custom control library (screenshot controls) of WPF. This project will be constantly updated, welcome to us ⭐ ️

v0.4.0-preview发布于 2026-10-31 15:20 UTC1,922star296fork同步于 2026-11-10 05:51 UTC

怎么上手

README 里没有找到可直接复制的安装命令

README 里没有找到可直接复制的安装命令,请到 README 或官方文档查看安装方式。

硬件要求

README 没有说明硬件要求。

下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

这个项目的说明还在生成中,先参考下面「最近发版」和 README。

最近发版

5 个版本v0.4.0-preview
  1. v0.4.0-preview最新正式版2026-10-31 · 2026-10-31 15:20 UTC

    概述

    汇总从 v0.3.0 以来的功能开发、控件增强、问题修复和示例更新,为 v0.4.0 发布做准备。

    变更统计

    • 126 个提交
    • 187 个文件变更:84 个新增、79 个修改、3 个删除、21 个重命名
    • 增加 8,347 行,删除 1,253 行

    主要变更

    • 控件与功能增强

      • ColorPicker 支持 Popup 显示模式。
      • TimePicker 支持 12/24 小时格式。
      • 重构 Timeline;增强 WaterfallPanel,支持虚拟化并优化布局性能。
      • 增加 ScrollViewer 回到顶部/底部能力,并扩展到 ListBox、ListView 和 DataGrid。
      • 增强 Tag、PathIcon、Segmented、GridSplitter 等控件及相关示例。
    • 窗口和交互体验

      • 修复多屏和不同 DPI 下窗口显示模糊、位置不正确等问题。
      • 优化滚动条外观、悬停效果及滚动行为。
      • 更新示例导航、菜单图标、控件命名和中英文菜单显示。
    • 问题修复

      • 修复 DateRangePicker 弹出窗口、日期输入和日历显示问题。
      • 修复 Toast 在多屏环境中的显示位置问题。
      • 修复 SVG currentColor、MapView 尺寸变化、Segmented 布局和 PanelHelper 间距等问题。
      • 改进空 ContextMenu、ComboBox 空白区域点击等场景的稳定性。
    • 示例与文档

      • 新增 Samples 首页。
      • 为示例菜单添加图标,并更新导航菜单显示。
      • Samples 支持中文和英文菜单显示及切换。
      • 新增和更新多个控件示例。
      • 更新中英文 README 和入门文档。

    验证

    尚未针对本次版本范围运行完整构建或测试。


    Overview

    This PR collects the feature work, control enhancements, bug fixes, and sample updates since v0.3.0, preparing the project for the v0.4.0 release.

    Change Summary

    • 126 commits
    • 187 files changed: 84 added, 79 modified, 3 deleted, and 21 renamed
    • 8,347 insertions and 1,253 deletions

    Highlights

    • Control and feature enhancements

      • Added Popup display mode support to ColorPicker.
      • Added 12/24-hour format support to TimePicker.
      • Refactored Timeline and enhanced WaterfallPanel with virtualization and layout performance improvements.
      • Added scroll-to-top and scroll-to-bottom support to ScrollViewer, ListBox, ListView, and DataGrid.
      • Enhanced Tag, PathIcon, Segmented, GridSplitter, and their samples.
    • Window and interaction experience

      • Fixed blurry or incorrectly positioned windows across multiple displays and DPI settings.
      • Improved scrollbar appearance, hover effects, and scrolling behavior.
      • Updated sample navigation, menu icons, control naming, and Chinese/English menu display.
    • Bug fixes

      • Fixed DateRangePicker popup, date input, and calendar display issues.
      • Fixed Toast positioning on multi-monitor setups.
      • Fixed issues involving SVG currentColor, MapView resizing, Segmented layout, and PanelHelper spacing.
      • Improved stability for empty ContextMenu and clicks on blank ComboBox areas.
    • Samples and documentation

      • Added a home page to the Samples application.
      • Added icons to the sample menu and updated sample navigation.
      • Added Chinese and English menu display and language switching in Samples.
      • Added and updated multiple control samples.
      • Updated the Chinese and English README and getting-started documentation.

    Validation

    The full build and test suite have not yet been run for this release range.

  2. v0.3.02026-10-07 · 2026-10-07 17:28 UTC
    查看更新说明

    What's Changed

    Full Changelog: https://github.com/WPFDevelopersOrg/WPFDevelopers/compare/v0.2.0...v0.3.0

  3. v0.2.02026-08-05 · 2026-08-05 16:37 UTC
    查看更新说明

    What's Changed

    Full Changelog: https://github.com/WPFDevelopersOrg/WPFDevelopers/compare/v0.1.0...v0.2.0

    This pull request introduces several improvements and updates across the workflow configuration, documentation, sample code, and project settings. The main focus areas include enhancing theme switching in the sample application, updating build workflows to support additional resource files and folder naming conventions, adding MarkdownViewer documentation, and incrementing the package version.

    Key changes:

    1. Theme Switching Improvements in Sample Application

    • Replaced the previous toggle button for theme switching in ThemeExample with a segmented control for a more intuitive UI, and updated the logic to use this new control (ThemeExample.xaml, ThemeExample.xaml.cs). [1] [2] [3]
    • Improved the main window's theme and color switch UI, including new icons, better popup handling, and dedicated event handlers (MainWindow.xaml, MainWindow.xaml.cs). [1] [2] [3]

    2. Build Workflow Enhancements

    • Updated GitHub Actions workflows to trigger on master only (not main), added pull request triggers, and included additional resource DLLs in the build artifacts for both .NET 4.0 and 4.5x builds (build-net40.yml, build-net45x.yml). [1] [2] [3] [4]
    • Introduced a step in the .NET 4.5x workflow to rename output folders for better compatibility (build-net45x.yml).

    3. Documentation Updates

    • Added English and Chinese documentation for the new MarkdownViewer control, including usage examples and links to sample code (getting-started.md). [1] [2]

    4. Sample Application Additions and Cleanups

    • Added a new Gauge example with offset support (GaugeExample.xaml).
    • Removed the obsolete WindowBasicExample sample and its code-behind to clean up unused files. [1] [2]

    5. Project and Versioning Updates

    • Bumped th
  4. v0.1.02026-07-08 · 2026-07-08 17:45 UTC
    查看更新说明

    What's Changed

    • Update Resources.props by @yanjinhuagood in 06f4c49

    • feat: remove carouse *.jpg by @yanjinhuagood in 6a6a4b6

    • feat: add slide images by @yanjinhuagood in 4f2de58

    • feat: modify the example image of the carousel by @yanjinhuagood in ccd3696

    • feat: modify FocusCarousel click item animation not begin by @yanjinhuagood in 063b854

    • feat: modify Display thumbnail for display by @yanjinhuagood in 2194407

    • feat: modify ControlsHelper CreateBitmapImage add bitmapCache by @yanjinhuagood in b0c6e37

    • feat: modify CircleMenu by @yanjinhuagood in c443bec

    • feat: modify CircleMenut by @yanjinhuagood in 9201aad

    • feat: modify CircleMenu Resource file *.png into *.svg by @yanjinhuagood in 148b422

    • Update Geometrys.xaml by @yanjinhuagood in 935de6b

    • Delete IndexToColor.cs by @yanjinhuagood in 3794814

    • feat: modify SvgViewer default width&height by @yanjinhuagood in e003089

    • feat: Create ResourceHelper by @yanjinhuagood in 855afb8

    • Update SplitButton.cs by @yanjinhuagood in f558084

    • Update HalfValueConverter.cs by @yanjinhuagood in f58538e

    • feat: modify DrawerMenu IsOpen rename IsExpanded by @yanjinhuagood in f43742f

    • Create BrowserHelper.cs by @yanjinhuagood in 09d7194

    • feat: add svg by @yanjinhuagood in c17c444

    • Update PathIcon.cs by @yanjinhuagood in f3b3135

    • Update SvgViewer.cs by @yanjinhuagood in a7e2b7f

    • feat: modify OpenUrl by @yanjinhuagood in 8487536

    • Delete Colors.svg by @yanjinhuagood in 4e64783

    • feat: modify OpenUrl by @yanjinhuagood in 4ae9594

    • Update Styles.Expander.xaml by @yanjinhuagood in c112133

    • feat: modify CircleMenu by @yanjinhuagood in b4a991b

    • Update DrawPrizeExample.xaml.cs by @yanjinhuagood in c740566

    • feat: modify MenuItemModel by @yanjinhuagood in 1c19ff7

    • feat: Del CircleMenuColor by @yanjinhuagood in 87dcb42

    • Update Drawer.cs by @yanjinhuagood in a141721

    • feat: Create SwitchButton by @yanjinhuagood in 6cfb68d

    • Update WPFDevelopers.Shared.projitems by @yanjinhuagood in 043399b

    • Update WPFDevelopers.Shared.projitems by @yanjinhuagood in 9cdeeb6

    • feat: modify PathIcon Foreground into PrimaryTextBrush by @yanjinhuagood in 64892a2

    • Update Drawer.xaml by @yanjinhuagood in 1d068e1

    • feat: modify ColorPicker setting SelectedColor fail by @yanjinhuagood in b5f104b

    • Create Code.svg by @yanjinhuagood in bd538eb

    • feat: modify SvgViewer support opacity by @yanjinhuagood in efe720a

    • feat: add CircleMenu support Darg by @yanjinhuagood in c209cbc

    • feat: modify DrawerExample by @yanjinhuagood in 1771b72

    • feat: modify Hyperlink MouseOver Foreground by @yanjinhuagood in 31a97f6

    • feat: modify Loading show grid & usercontrol not displayed by @yanjinhuagood in 30be8f6

    • Fix issue: NumericBox input cursor position error (#262) by @yanjinhuagood in 9b3b723

    • feat: modify CircleMenu Drag error by @yanjinhuagood in 067e23e

    • Update App.xaml by @yanjinhuagood in 9bf626d

    • feat: Split the basic control example into separate orders by @yanjinhuagood in 0bd915c

    • feat: modify DrawerMenuExample Image into SvgViewer by @yanjinhuagood in 38415fe

    • Update RulerControlExample.xaml by @yanjinhuagood in 36f1c78

    • feat: modify menuEnum by @yanjinhuagood in 264703c

    • Update UsageGuide.xaml by @yanjinhuagood in 0c86cb8

    • Fix issue: NumericBox input cursor position error (#262) by @yanjinhuagood in fdc0d1f

    • feat: modify SplitButton & example by @yanjinhuagood in de1f447

    • Fix issue: Create Segmented (#263) by @yanjinhuagood in c36c25a

    • Update WPFDevelopers.Samples.Shared.projitems by @yanjinhuagood in 8b198cb

    • feat: modify Window add TitleBarLayout content by @yanjinhuagood in bca9985

    • feat: MainWindow TitleBarLayout add ColorPicker setting theme color by @yanjinhuagood in 5b3448b

    • feat: modify MainWindow add CircleMenu by @yanjinhuagood in 1821ced

    • Update WPFDevelopers.SamplesCode.csproj by @yanjinhuagood in e55fba8

  5. v0.1.0-preview22026-06-21 · 2026-06-21 06:47 UTC
    查看更新说明

    What's Changed

    • Create CarouselBase.cs by @yanjinhuagood in fe25969

    • Update Carousel.cs by @yanjinhuagood in b56b548

    • feat: modify CarouseExample by @yanjinhuagood in 1230972

    • feat: modify MasterCarousel rename CardCarousel by @yanjinhuagood in cdb6a89

    • Update WPFDevelopers.Shared.projitems by @yanjinhuagood in 20fa7c1

    • feat: modify EmphasizerCarousel rename FocusCarousel by @yanjinhuagood in 0e4f0cd

    • Update getting-started.md by @yanjinhuagood in fd66543

    • Update getting-started.md by @yanjinhuagood in f2f7086

    • Update README-zh.md by @yanjinhuagood in 9f3f3e9

    • Update README.md by @yanjinhuagood in d091662

    • Fix issue: Current SystemOS WIN11 CornerRadius(4) (#258) 👍 by @yanjinhuagood in 49e6f09

    • feat: modify FocusCarousel by @yanjinhuagood in 0dc7c75

    • Create .gitattributes by @yanjinhuagood in e56ebe5

    • Update Styles.PasswordBox.xaml by @yanjinhuagood in 481d7e6

    • Update Styles.TextBox.xaml by @yanjinhuagood in 0815dee

    • Update Styles.Hyperlink.xaml by @yanjinhuagood in 4f113b4

    • feat: Create SplitButton by @yanjinhuagood in a9d709c

    • Update WPFDevelopers.Shared.projitems by @yanjinhuagood in c7cb68f

    • Merge branch 'dev' into dev-into-0.1.0 by @yanjinhuagood in 400682c

    • Fix issue: Current SystemOS WIN11 CornerRadius(4) (#258) 👍 by @yanjinhuagood in 464c70a

    • Merge dev into release/0.1.0 by @yanjinhuagood in ed5b05e

    • feat: modify version 0.1.0-preview1 into 0.1.0-preview2 by @yanjinhuagood

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    About

    WPFDevelopers provides reusable controls, application-wide themes, and interactive samples for WPF projects. It supports target frameworks from .NET Framework 4.0 through .NET 10. See the quick start guide for framework and environment details.

    ThemesControlsSamples
    Light / Dark themes and customizable accent colorsButtons, inputs, navigation, charts, windows, and moreSample applications with implementation and composition examples

    Quick start

    Install the stable NuGet package:

    Install-Package WPFDevelopers
    

    To try the latest features, install the preview package:

    Install-Package WPFDevelopers -Pre
    

    Then follow the quick start guide to configure App.xaml and use the controls.

    Documentation and resources

    Control preview

    WPFDevelopers control preview WPFDevelopers control preview

    The full collection of control demos and animated previews is preserved below. Items marked DEMO may be sample-only implementations or compositions rather than built-in WD controls; refer to the corresponding source.

    中文

    dotnet-version Visual Studio 2026 Github Github stars Downloads AtomGIt Star

    Welcome to WPFDevelopers

    Please use the preview Nuget package for the latest

    How to compile 👀

    Github https://github.com/WPFDevelopersOrg

    AtomGit https://atomgit.com/WPFDevelopersOrg

    码云 https://gitee.com/WPFDevelopersOrg

    Documentation Center → Quick Start

    The sample navigation marks sample-only implementations and composed effects with a blue-gray DEMO badge. These are not built-in WD controls; refer to the sample source. DEMO is independent of NEW / UPDATE, so both badges can appear on the same item.

    Visual Studio 2026

    System Design

    .Net Version

    .Net VersionStatus
    net40✅
    net45✅
    net451✅
    net452✅
    net46✅
    net461✅
    net462✅
    net47✅
    net471✅
    net472✅
    net48✅
    net481✅
    netcoreapp3.0✅
    netcoreapp3.1✅
    net5.0-windows✅
    net6.0-windows✅
    net7.0-windows✅
    net8.0-windows✅
    net9.0-windows✅
    net10.0-windows✅

    Donate

    If you think our open source software is helpful to you, please scan the QR code below and give us a cup of coffee.

    AlipayWeChat pay

    Backers

    Contributors

    contributorcontribution
    @HaHa-ZYKProject Quality Guardian :shield: - Thank you for continuously submitting a large number of extremely valuable and high-quality issue reports. Your meticulous observation skills are the cornerstone of project stability.
    @wanghaodong24Thank you for consistently submitting high-quality issues

    This is a UI library for WPF developers based on WPF custom advanced controls. Welcome to use..

    How to use

    Step 1: Add NuGet

    Install-Package WPFDevelopers
    

    Step 2: Add nodes to App.xaml

    xmlns:wd="https://github.com/WPFDevelopersOrg/WPFDevelopers"
    
        <Application.Resources>
            <ResourceDictionary>
                <ResourceDictionary.MergedDictionaries>
                         <ResourceDictionary Source="pack://application:,,,/WPFDevelopers;component/Themes/Theme.xaml" />
     			<!--  需要注意 wd:Resources 必须在Theme.xaml后  -->
     			<!--
        			默认情况下,Theme 为 Light(适用于 Windows 10 及以上版本),
       				并会自动根据系统主题切换 Light 或 Dark 模式。
       				若设置为 Default,则会跟随系统主题。
       			-->
    
    		    <!--
       				如需手动指定为 Light 模式,可使用 Theme="Light"。
       				您还可以通过 Color 属性自定义主题色,例如设置为 Color="Fuchsia"。
    		    -->
    
    		    <!--
       				此外,通过 Radius 属性可控制控件的圆角大小(Windows 11 默认为 4)。
    			 -->
    				<wd:Resources Radius="4" />
                </ResourceDictionary.MergedDictionaries>
            </ResourceDictionary>
        </Application.Resources>
    

    Step 3: Add the namespace

    xmlns:wd="https://github.com/WPFDevelopersOrg/WPFDevelopers"


    Timeline


    WaterfallPanel


    ScrollNavigation


    MapView


    MarkdownViewer


    SwitchTheme


    CircleMenu


    Segmented


    SplitButton


    Carousel


    OtpBox


    GrayscaleEffect


    DataGridFilter


    SvgViewer


    Dial


    MultiSelectComboBox


    ScreenCaptureExt


    AllPath


    AnimatedGrid


    GestureUnlock


    IconicThumbnail


    Snap


    NavScrollPanel


    Gauge


    Toast


    DateRangePicker


    Drawer


    Spacing


    NotifyIcon


    ChartRadar


    ChartLine


    ChartBar


    SearchText


    ClearButton


    IPEditBox


    TransformLayout


    ScreenCaptureExt


    TimePicker


    ColorPicker


    NumericBox


    PathIcon


    Window


    Badge


    GrayscaleEffect


    CropImage


    BreakCrumbBar


    MultiSelectionSearchComboBox


    ScrollIntoView.IsPosition


    ControlLoading


    BasicControlLoading


    WindowMask


    ControlMask


    MultiSelectComboBox


    Step


    Magnifier


    GrayscaleEffect


    NineGridView


    CodeViewer


    NotifyIcon


    WindowAcrylicBlur


    Barrage


    CanvasHandWriting


    Bubble


    PanningItems


    Shake


    StarrySky


    CropAvatar


    ScreenCut


    AnimationAudio


    VerifyCode


    EdgeLight


    DrawPrize


    DesktopPlayVideo


    ImageCrop


    NumberCard


    CountdownTimer


    SpeedRockets


    SnowCanvas


    WPFBreatheLight


    Thermometer


    RingLoading


    RoundPicker


    LogoAnimation


    LineChart


    RainbowButtons


    Ruler


    ZooSemy


    BasicBarChart


    RadarChart


    DrawerMenu


    SpotLight


    TransitionPanel


    OtherControl


    FocusCarousel


    CardCarousel


    MasterCarousel


    ScrollViewerAnimation


    RollLoading


    CycleLoading


    Pagination


    TaskbarItemInfo


    BallLoading


    PieSegment


    WpfDashboard


    WpfTimeLineControl


    WpfCircularProgressBar


    WpfCircularMenu


    WpfPassword


    WpfChatEmojiText


    WPFSongWords


    ThumbDragAndAngleExample.xaml


    WpfBingMap


    NavMenu3D


    WpfRoundMenu


    CutImageSolution