Element 风格的 WPF 后台管理系统,免费开源,开箱即用

前言

数字化转型加速的当下,高效、美观的企业级后台管理系统成为刚需。WPF其强大的渲染能力和灵活的UI设计,始终是Windows桌面开发的重要选择。

今天推荐一个融合现代Element UI设计语言的WPF开源后台框架,为大家提供免费、可定制的高效解决方案,显著降低企业级应用开发门槛。

项目介绍

一款专注于用户体验和视觉设计的WPF管理后台系统。它采用了流行的Element主题风格,结合HandyControl等UI框架,提供美观且实用的前端界面。

ZRCLIENT 基于.Net Framework 4.5.2开发,支持多种图表组件和多样式引用,能够满足各种复杂的业务需求。另外,该项目完全开源,欢迎大家下载并进行二次开发。

项目功能

ZRCLIENT提供以下核心功能:

项目特点

1、采用Element主题风格

界面设计简洁美观,提供一致的用户体验。

2、基于.Net Framework 4.5.2

兼容性好,适合大多数企业级应用。

3、使用HandyControl作为UI框架

提供丰富的控件库,简化开发工作。

4、集成LiveCharts.Wpf图表组件

支持多种图表类型,满足数据可视化需求。

5、支持多样式引用

通过WpfMultiStyle实现多样化的样式配置,灵活应对不同场景。

项目技术

ZRCLIENT的技术栈包括:

技术的选择确保了项目的可维护性、扩展性和代码质量。

HandyControl提供丰富的UI组件,极大地简化了前端开发工作;

LiveCharts.Wpf则支持多种图表类型,满足数据可视化的需要;

MVVMLight框架则提供了清晰的分层结构,便于模块化开发。

项目代码

创建宽度改变动画

/// 
/// 创建宽度改变动画
///
/// 元素
/// 起始值
/// 结束值
/// 间隔
public static void CreateWidthChangedAnimation(UIElement element, double Form, double To, TimeSpan span)
{
DoubleAnimation doubleAnimation = new DoubleAnimation;
doubleAnimation.From = Form;
doubleAnimation.To = To;
doubleAnimation.Duration = span;
Storyboard.SetTarget(doubleAnimation, element);
Storyboard.SetTargetProperty(doubleAnimation, new PropertyPath("Width"));
Storyboard storyboard = new Storyboard;
storyboard.Children.Add(doubleAnimation);
storyboard.Begin;
}

工具类

获取当前计算机 CPU 使用率 和 内存使用百分比 的工具类。

public classComputerInfo
{
// 用于监控 CPU 使用率的性能计数器
private PerformanceCounter cpuCounter;

// 用于查询内存信息的 WMI 管理类
private ManagementClass memCounter;

// 单例实例,确保全局唯一
privatestatic ComputerInfo instance;

///
/// 获取 ComputerInfo 实例的单例方法
///
public static ComputerInfo GetInstance
{
// 加锁防止多线程下重复创建实例
lock ("instance")
{
if (instance == null)
{
instance = new ComputerInfo;

// 初始化 CPU 性能计数器,监控整体处理器时间
instance.cpuCounter = new PerformanceCounter("Processor", "% Processor Time", "_Total");

// 初始化内存管理类
instance.memCounter = new ManagementClass;
}

return instance;
}
}

///
/// 获取当前内存使用百分比
/// 原理:计算总内存容量与可用内存之差,再求出使用率
///
public double GetMemInfo
{
// 获取物理内存信息,统计总容量(GB)
memCounter.Path = new ManagementPath("Win32_PhysicalMemory");
ManagementObjectCollection moc = memCounter.GetInstances;
double available = 0, capacity = 0;

foreach (ManagementObject mo1 in moc)
{
capacity += Math.Round(Int64.Parse(mo1.Properties["Capacity"].Value.ToString) / 1024.0 / 1024.0 / 1024.0, 1);
}
moc.Dispose; // 释放资源

// 获取当前可用内存(GB)
memCounter.Path = new ManagementPath("Win32_PerfFormattedData_PerfOS_Memory");
moc = memCounter.GetInstances;
foreach (ManagementObject mo2 in moc)
{
available += Math.Round(Int64.Parse(mo2.Properties["AvailableMBytes"].Value.ToString) / 1024.0, 1);
}
moc.Dispose;

// 返回内存使用百分比
return (capacity - available) / capacity * 100;
}

///
/// 获取当前 CPU 使用率(%)
///
public double GetCPUInfo
{
returnthis.cpuCounter.NextValue; // 获取当前 CPU 使用值
}

///
/// 释放占用的资源,避免内存泄漏
///
public void Dispose
{
this.memCounter?.Dispose;
this.cpuCounter?.Dispose;
}
}

项目效果

通过使用ZRCLIENT,可以快速开发出一个美观、实用且高度定制化的后台管理系统。

以下是部分实际效果展示:

系统登录

系统首页

用户管理

项目源码

Gitee:https://gitee.com/SayHelloCat/zrclient

总结

Element主题风格的WPF管理后台系统开箱即用的 解决方案。其技术选型兼顾稳定性和前瞻性,从MVVM模式的应用到多主题引擎的集成,都体现了现代化桌面开发的实践标准。

展开阅读全文

更新时间:2026-06-01

标签:数码   后台   风格   用户   内存   图表   框架   项目   数据   使用率   组件   多种

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight All Rights Reserved.
Powered By 71396.com 闽ICP备11008920号
闽公网安备35020302034903号

Top