SkillAgentSearch skills...

TerminalMACS.ManagerForWPF

TerminalMACS, Chinese full name:多终端管理与检测系统, English full name:Terminal Management and Check System

Install / Use

/learn @dotnet9/TerminalMACS.ManagerForWPF
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

<p align="center"> <a href="https://dotnet9.com"> <img width="80px" src="./assets/logo.png"> </a> </p> <h1 align="center">TerminalMACS</h1>

注意: 此项目只用于存放一些测试代码,逐渐沦为一个大杂烩仓库,请谨慎star。

  1. 刚开始的规划是做一个多平台的监控开源项目,做着做着就变成一个demo集合项目了。
  2. 不定期的更新.NET最新版本,目前是 .NET 7,不做历史版本保留,抱歉。
  3. 现在此项目的目标只是做学习和积累。

0. 简介

一个使用 Prism 作为模块化框架、基于多个开源控件库作为UI控件选择、集成开源 UI 界面设计的 .NET 7 WPF 客户端项目。

1. 特性

  • 使用 .NET 7 开发,体验最新 .NET 平台

.NET是免费,跨平台,开源的,用于构建所有应用的开发人员平台。

  • 基于 Prism 8 搭建模块化框架,方便程序扩展

Prism为程序设计提供指导,旨在帮助用户更加容易的设计和构建丰富、灵活、易于维护WPF桌面应用程序。Prism使用设计模式(如MVVM,复合视图,事件聚合器),帮助你创建一个松耦合的程序。遵循这些设计模式原则,将目标程序解耦成独立的模块。这些类型的应用程序被称为复合应用程序。

  • 已使用或即将使用到多个开源WPF控件库

多种开源 WPF UI 库选择,开发 WPF 项目更方便:MaterialDesignInXamlToolkitHandyControlPanuonUI.SilverAduSkin

  • ECharts

ECharts:pie-doughnut

  • 本地化支持

  • 动态国际化支持

  • 支持主题色动态切换

2. 支持环境

  • .NET 7.0。
  • Visual Studio 2022

3. 当前版本

0.1

4. 链接

官方网站

5. 项目界面截图

5.1. 关于

<p align="center"> <a href="https://dotnet9.com"> <img width="800px" src="./assets/about-zh_CN.png"> </a> </p> <p align="center">关于TerminalMACS</p>

5.2. 首页模块

5.3. 服务端模块

5.4. 客户端模块

5.5. 测试案例

收集全球优秀的开源WPF界面设计

以下为2022年收集的案例

2022年05月23日 新手引导(MVVM版本)

2022年05月20日 新手引导

2022年05月16日 登录界面5 界面设计

2022年05月14日 黑暗模式的钱包支付仪表盘界面设计

2022年05月11日 如何在 WPF 中设计漂亮的社交媒体信息仪表板

2022年05月10日 一个比较摩登的登录界面


以下为2022年之前的收集。

登录注册分类 1

  1. 简单登录窗体设计1

参考视频:C# WPF Material Design UI: Login Window

参考源码:Login2

<p align="center"> <img src="./assets/TestDemos/SimpleLoginView1.png"> </p> <p align="center">简单登录窗体设计1</p>
  1. 简单登录窗体设计2

参考视频:C# WPF Material Design UI: Login Window

参考源码:Login1

<p align="center"> <img src="./assets/TestDemos/SimpleLoginView2.png"> </p> <p align="center">简单登录窗体设计2</p>
  1. 美食应用登录

参考视频:WPF Food App Login UI Material Design [Speed Design]

<p align="center"> <img src="./assets/TestDemos/FoodAppLoginUI-zh_CN.gif"> </p> <p align="center">美食应用登录</p>

菜单类 2

  1. 抽屉式菜单1

参考视频:C# WPF Material Design UI: Animated Colorful Navigation Drawer

参考源码:AnimatedColorfulMenu

<p align="center"> <img src="./assets/TestDemos/DrawerMenu.gif"> </p> <p align="center">抽屉式菜单1</p>
  1. 抽屉式菜单2

参考视频:WPF - Navigation Drawer / Sidebar Menu | UI Design | C# |

参考源码:Navigation-Drawer-Sidebar-Menu-in-WPF

<p align="center"> <img src="./assets/TestDemos/NavigationDrawMenu.gif"> </p> <p align="center">抽屉式菜单2</p>
  1. 菜单切换用户控件

参考视频:C# WPF Material Design UI: Fast Food Sales

参考源码:Pizzaria1

<p align="center"> <img src="./assets/TestDemos/MenuChange.gif"> </p> <p align="center">菜单切换用户控件</p>
  1. 菜单切换动画

参考视频:C# WPF Material Design UI: Animated Menu

参考源码:AnimatedMenu1

<p align="center"> <img src="./assets/TestDemos/AnimatedMenu.gif"> </p> <p align="center">菜单切换用户控件</p>

其他界面设计 3

  1. 移动应用仪表盘

参考视频:WPF Dashboard UI – Material Design [Speed Design]

参考源码:WPF-Dashboard-UI-Material-Design-Concept

<p align="center"> <img src="./assets/TestDemos/AppUsageDashboard.gif"> </p> <p align="center">移动应用仪表盘</p>
  1. 简易仪表盘2

参考视频:WPF Dashboard UI – Material Design [Speed Design]

参考源码:WPF-Dashboard-UI-Material-Design-Concept

ECharts:pie-doughnut

<p align="center"> <img src="./assets/TestDemos/Dashboard2.gif"> </p> <p align="center">简易仪表盘2</p>
  1. Instagram重新设计

参考视频:C# WPF Material Design UI: Redesign Instagram

参考源码:Instagram

<p align="center"> <img src="./assets/TestDemos/InstagramRedesign.gif"> </p> <p align="center">Instagram重新设计</p>
  1. LoLGoal

参考视频:dotnet9

参考源码:dotnet9

<p align="center"> <img src="./assets/TestDemos/LolGoal.gif"> </p> <p align="center">LoLGoal</p>
  1. 简易音乐播放器1

参考视频:C# WPF Material Design UI: Dashboard

参考源码:Dashboard

<p align="center"> <img src="./assets/TestDemos/MusicPlayer1.png"> </p> <p align="center">简易音乐播放器1</p>
  1. 百度地图
<p align="center"> <img src="./assets/TestDemos/BaiduMap.gif"> </p> <p align="center">百度地图</p>
  1. 聊天界面设计

参考视频:

参考源码:Chat

<p align="center"> <img src="./assets/TestDemos/ChatView.gif"> </p> <p align="center">聊天界面设计</p>
  1. 计算器

参考视频:

<p align="center"> <img src="./assets/TestDemos/Calculator.gif"> </p> <p align="center">计算器</p>

更新记录

2020-11-15 添加快捷应用:src\Tools\QuickApp

参考开源项目:

https://github.com/yanjinhuagood/SoftWareHelper

文章

https://www.cnblogs.com/yanjinhua/p/13896894.html

Dotnet9站点介绍文章:https://dotnet9.com/16722.html

快捷应用

功能:

  1. ☑菜单通过配置文件配置,因为操作系统可能装了太多应用,不需要全部加载。

后面计划改成sqlite数据库存储:

{
  "IsPowerOn": true,
  "MenuItemInfos": [
    {
      "FilePath": "C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe",
      "IconPath": null,
      "Name": "Google Chrome",
      "Type": 0
    },
    {
      "FilePath": "https://dotnet9.com/",
      "IconPath": "logo.png",
      "Name": "Dotnet9",
      "Type": 1
    },
    {
      "FilePath": "mstsc /v:192.168.1.133",
      "IconPath": "shell.png",
      "Name": "192.168.1.133",
      "Type": 2
    }
  ]
}
  1. ☑支持exe拖拽(或者系统生成的快捷方式拖拽)添加。
private void Grid_Drop(object sender, DragEventArgs e)
{
    try
    {
        var fileName = ((System.Array)e.Data.GetData(DataFormats.FileDrop)).GetValue(0).ToString();
        MenuItemInfo menuItem = new MenuItemInfo() { FilePath = fileName };

        // 快捷方式需要获取目标文件路径
        if (fileName.ToLower().EndsWith("lnk"))
        {
            WshShell shell = new WshShell();
            IWshShortcut wshShortcut = (IWshShortcut)shell.CreateShortcut(fileName);
            menuItem.FilePath = wshShortcut.TargetPath;
        }
        ImageSource imageSource = SystemIcon.GetImageSource(true, menuItem.FilePath);
        System.IO.FileInfo file = new System.IO.FileInfo(fileName);
        if (string.IsNullOrWhiteSpace(file.Extension))
        {
            menuItem.Name = file.Name;
        }
        else
        {
            menuItem.Name = file.Name.Substring(0, file.Name.Length - file.Extension.Length);
        }
        menuItem.Type = MenuItemType.Exe;

        if (ConfigHelper.AddNewMenuItem(menuItem))
        {
            var btn = AddMenuItem(menuItem);
            fishButtons.Children.Add(bt
View on GitHub
GitHub Stars382
CategoryDevelopment
Updated3mo ago
Forks111

Languages

JavaScript

Security Score

77/100

Audited on Dec 18, 2025

No findings