
致力于挖掘功能强大、性能优越、创新前沿且简单易用的 C#/.NET 开源框架、项目、类库与工具。助力 .NET 开发者轻松解锁并运用这些实用的宝藏资源,提升开发效率与创新能力!
项目介绍
Rubyer-WPF 是一款免费开源、通用美观的 WPF UI 控件库,旨在为开发者提供一套美观、易用且高度可定制的 UI 组件。该项目通过优化控件样式、增加动画效果及附加功能,极大地提升了 WPF 应用的用户体验和开发效率。
软件架构
基于 .Net Framework 4.6 和 .Net Core 3.1 和 .Net 6 的 WPF
适用场景
Rubyer-WPF 适用于需要构建现代化、响应式桌面应用的 WPF 开发场景。无论是企业级应用、数据可视化工具还是个人兴趣项目,Rubyer-WPF 都能提供丰富的 UI 组件和灵活的主题定制能力,帮助开发者快速构建出既美观又实用的界面。
功能模块
-
通用主题:提供更加通用的主题样式,通过部分参数配置即可改变整体主题风格。 -
亮暗模式切换:支持亮色和暗色主题模式,默认跟随系统设置,也可手动切换。 -
自定义颜色:允许开发者自定义整体主题颜色,包括前景色、背景色、边框色等。 -
重新优化控件样式:对现有控件进行样式上的优化,提升视觉效果。 -
动画效果:为控件添加动画效果,增强用户体验。 -
附加功能:为部分控件增加附加功能,如 PageBar 控件支持中英文切换。
安装教程
Install-Package Rubyer 添加引用, 或者 Nuget 搜索 Rubyer 安装。
使用说明
在 WPF 项目的 App.Xaml 中引用:
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/Rubyer;component/Themes/Generic.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
根据需要可自定义整体主题颜色:
<SolidColorBrush x:Key="WhiteForeground" Color="#FFFFFF" />
<SolidColorBrush x:Key="BlackForeground" Color="#000000" />
<Color x:Key="LightDefaultForegroundColor">#252526</Color>
<Color x:Key="DarkDefaultForegroundColor">#E6E6E6</Color>
<SolidColorBrush x:Key="DefaultForeground" Color="{DynamicResource LightDefaultForegroundColor}" />
<Color x:Key="LightDefaultBackgroundColor">#FFFFFF</Color>
<Color x:Key="DarkDefaultBackgroundColor">#1E1E1E</Color>
<SolidColorBrush x:Key="DefaultBackground" Color="{DynamicResource LightDefaultBackgroundColor}" />
<Color x:Key="LightFloatBackgroundColor">#F8F8F8</Color>
<Color x:Key="DarkFloatBackgroundColor">#303030</Color>
<SolidColorBrush x:Key="FloatBackground" Color="{DynamicResource LightFloatBackgroundColor}" />
<Color x:Key="LightControlBackgroundColor">#FFFFFF</Color>
<Color x:Key="DarkControlBackgroundColor">#1E1E1E</Color>
<SolidColorBrush x:Key="ControlBackground" Color="{DynamicResource LightControlBackgroundColor}" />
<Color x:Key="LightContainerBackgroundColor">#FFFFFF</Color>
<Color x:Key="DarkContainerBackgroundColor">#2D2D2D</Color>
<SolidColorBrush x:Key="ContainerBackground" Color="{DynamicResource LightContainerBackgroundColor}" />
<Color x:Key="LightPrimaryColor">#2196F3</Color>
<Color x:Key="DarkPrimaryColor">#2196F3</Color>
<SolidColorBrush x:Key="Primary" Color="{DynamicResource LightPrimaryColor}" />
<Color x:Key="LightAccentColor">#F50057</Color>
<Color x:Key="DarkAccentColor">#F50057</Color>
<SolidColorBrush x:Key="Accent" Color="{DynamicResource LightAccentColor}" />
<Color x:Key="LightLightColor">#6EC6FF</Color>
<Color x:Key="DarkLightColor">#6EC6FF</Color>
<SolidColorBrush x:Key="Light" Color="{DynamicResource LightLightColor}" />
<Color x:Key="LightDarkColor">#0069C0</Color>
<Color x:Key="DarkDarkColor">#0069C0</Color>
<SolidColorBrush x:Key="Dark" Color="{DynamicResource LightDarkColor}" />
<Color x:Key="LightBorderColor">#9E9E9E</Color>
<Color x:Key="DarkBorderColor">#CFCFCF</Color>
<SolidColorBrush x:Key="Border" Color="{DynamicResource LightBorderColor}" />
<Color x:Key="LightBorderLightColor">#CFCFCF</Color>
<Color x:Key="DarkBorderLightColor">#616161</Color>
<SolidColorBrush x:Key="BorderLight" Color="{DynamicResource LightBorderLightColor}" />
<Color x:Key="LightBorderLighterColor">#E0E0E0</Color>
<Color x:Key="DarkBorderLighterColor">#424242</Color>
<SolidColorBrush x:Key="BorderLighter" Color="{DynamicResource LightBorderLighterColor}" />
<Color x:Key="LightSeconarydTextColor">#CC9E9E9E</Color>
<Color x:Key="DarkSeconarydTextColor">#CCBDBDBD</Color>
<SolidColorBrush x:Key="SeconarydText" Color="{DynamicResource LightSeconarydTextColor}" />
<Color x:Key="LightWatermarkTextColor">#BB6D6D6D</Color>
<Color x:Key="DarkWatermarkTextColor">#BBE0E0E0</Color>
<SolidColorBrush x:Key="WatermarkText" Color="{DynamicResource LightWatermarkTextColor}" />
<Color x:Key="LightEffectColor">#969696</Color>
<Color x:Key="DarkEffectColor">#000000</Color>
<Color x:Key="LightMaskColor">#9E9E9E</Color>
<Color x:Key="DarkMaskColor">#9E9E9E</Color>
<SolidColorBrush x:Key="Mask" Color="{DynamicResource LightMaskColor}" />
<Color x:Key="LightMaskDarkColor">#6D6D6D</Color>
<Color x:Key="DarkMaskDarkColor">#6D6D6D</Color>
<SolidColorBrush x:Key="MaskDark" Color="{DynamicResource LightMaskDarkColor}" />
<Color x:Key="LightDialogBackgroundColor">#99373737</Color>
<Color x:Key="DarkDialogBackgroundColor">#88111111</Color>
<SolidColorBrush x:Key="DialogBackground" Color="{DynamicResource LightDialogBackgroundColor}" />
<Color x:Key="LightHeaderBackgroundColor">#1F000000</Color>
<Color x:Key="DarkHeaderBackgroundColor">#1FFFFFFF</Color>
<SolidColorBrush x:Key="HeaderBackground" Color="{DynamicResource LightHeaderBackgroundColor}" />
<SolidColorBrush x:Key="Error" Color="#E63935" />
<SolidColorBrush x:Key="Info" Color="#909399" />
<SolidColorBrush x:Key="Warning" Color="#F57C00" />
<SolidColorBrush x:Key="Success" Color="#43A047" />
<SolidColorBrush x:Key="Question" Color="#2196F3" />
效果展示
开源地址
https://gitee.com/wuyanxin1028/rubyer-wpf




