Skip to content

Lake1059/LakeUI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

湖界 LakeUI

GitHub License

这个世界总要有人去造轮子,造好看好用的轮子。

NuGet:https://www.nuget.org/packages/LakeUI
官网:https://lakeui.top
购买许可证:爱发电 ifdian.net
Q群:1087964158

首发宣传视频:BV1zeAHzEEKX

LakeUI 是专为 WinForms 项目设计的一套精致交互控件,以我的昵称命名,官方中文名称 “湖界”。主打简单易用、精致美观、高度定制、高效性能,新手强推。

LakeUI 从实际需求出发(指正:从我的实际需求触发),重新了设计了大量 .NET 控件,其中不乏许多市面上从不重视的控件,尤其是列表视图 ListView,在我的开发生涯中始终离不开这个控件,而市面上没有任何一个产品能好好做这个控件,所以在这个项目中有关列表视图的控件是绝对的开发重心。

除了控件之外 LakeUI 还会持续封装很多与交互有关的功能。

Caution

LakeUI 是在新的 .NET 框架上开发的,以前的 Framework 和 Core 框架无法使用!
当然如果你知道怎么搞能用的话也可以 Fork 过去自己搞,我是懒得照顾了。
请注意查看位于此文件末尾的收费标准和常见问题!
不会考虑制作 DataGridView!不要来问这个!

特点

  • 不依赖任何第三方组件,完全 .NET 自身实现
  • 符合现代化扁平设计风格,默认采用暗黑配色
  • 可定制程度高,属性众多,即时更新效果
  • 所有全新绘制的组件标配 Super Sampling Anti-Aliasing (SSAA) 超采样抗锯齿
  • 所有组件的文字全部支持 MacType 这类文字渲染软件
  • 所有支持动画的组件全部可以定制动画时长和帧率
  • 所有组件全部支持 DPI 全自动缩放
  • 对窗体设计器和属性界面友好
  • 全属性自带中文说明,更易上手
  • 全属性自带默认值,可直接在属性窗口中右键选择重置
  • 字体和颜色属性支持自动跟随容器属性值
  • 绝不凑数,专注质量和细节,绝大多数控件都是从头开发

安装

如果您正在使用 Visual Studio 那就太棒了,直接通过 NuGet 包管理器安装到项目即可;如果在使用其他开发环境也可以直接在仓库发行版中下载 dll 并引用。

提供的控件

此处仅列出简要内容用于索引,按照设计时间排序,详细介绍请运行 LakeUI.Demo.exe 来实际上手体验。

控件名称 / 类名 中文名称 技术偏好 制作类型 动画支持 性能负载
1 ModernButton 现代化按钮 人体工学科技 全新 背景渐变 低 🟢
2 ModernTextBox 现代化文本框 天顶星科技 全新 中 🟡
3 ModernComboBox 现代化下拉框 天顶星科技 全新 多数动画 低 🟢
4 BooleanSwitch 布尔开关 人体工学科技 全新 全程动画 低 🟢
5 QuantumSwitch 量子开关 三体科技 全新 全程动画 低 🟢
6 ExcellentTrackBar 极好的滑动条 曹操科技 全新 位移动画 低 🟢
7 ListViewDirectReDraw 列表视图原地重绘 原版科技 原版 增益 ❤️
8 ReDrawContextMenuStrip 重绘的上下文菜单 原版科技 原版 增益 ❤️
9 ModernContextMenu 现代化上下文菜单 人体工学科技 全新 全程动画 低 🟢
10 UltraDetailListView 极致的详细信息列表视图 招牌科技 全新 半数动画 高 🔴
11 ModernTabListControl 现代化竖向选项卡 人体工学科技 全新 半数动画 低 🟢
12 ModernTabControl 现代化横向选项卡 人体工学科技 全新 半数动画 低 🟢
13 ModernPanel 现代化容器 人体工学科技 原版 低 🟢
14 ModernListBox 现代化列表框 人体工学科技 全新 半数动画 低 🟢
15 HtmlColorLabel 支持 HTML 颜色标记的标签 拿来科技 全新 低 🟢
16 ModernFontDialog 现代化字体选择对话框窗口 史诗科技 组合件 N/A 低 🟢
17 ModernColorDialog 现代化颜色选择对话框窗口 史诗科技 组合件 N/A 低 🟢
18 ExcellentProgressBar 极好的进度条 人体工学科技 全新 全程动画 低 🟢
19 RoundDashBoard 圆形仪表盘 地平线科技 全新 全程动画 低 🟢
20 JustEmptyControl (拿来填空白段的) N/A N/A N/A N/A
21 ModernCheckBox 现代化复选/单选框 人体工学科技 全新 全程动画 低 🟢
22 ThisIsYourWindow 窗口样式定制器 天顶星科技 全新 N/A 低 🟢
23 MarkDownViewer MarkDown 简易查看器 布施戈门科技 全新 中 🟡
24 ProgressRing 无进度的加载动画 微软科技 全新 全程动画 低 🟢
25 SysTaskBarProgress 系统任务栏进度显示类 微软科技 N/A N/A 低 🟢
26 PixelPictureBox 像素级框选的图片框 盯帧科技 全新 低 🟢
27 TaskbarThumbnailToolbar 任务栏缩略图工具栏 微软科技 N/A N/A 低 🟢

最值得一试


想要一个更易于使用的字体选择对话框吗?
还是想要一个更加符合现代需求的颜色选择对话框?
只需要像以前一样 New 出对象并选择你的 Show


羡慕其他人用 Web 框架定制窗口样式?现在轮到他们羡慕你了
全尺寸、全颜色、对齐方位、可选分层阴影,全部可定制!
WinForms 现在也可以拥有比肩 Chrome、Edge、VS Code、VS,甚至 macOS 的窗口样式


轻量级 markdown 渲染控件,支持 AI 输出场景的增量渲染功能
支持选中复制内容、本地/在线图片、大部分基本样式等,还可定制元素效果


文本框现在支持行数显示和定制代码高亮模式,可满足轻量编程场景
虽无法完全复刻 Visual Studio 的特性,但已足够绝大多数需求
文本框自身仅提供高亮接口,实现方法可以查看 Demo 演示中这一部分的源码


专为像素级框选而生的图片框,自带缩放和框选功能
其自身并不提供放大镜视图位置,只是提供获取方法来直接返回图片成品
开发者仅需提供额外的图片框并调用方法即可实现四个角落的放大镜视图

收费标准

请注意,LakeUI 是收费软件,要在公开发布的产品中使用必须取得对应许可,以下列出了不同用途的收费标准。LakeUI 主要面向个人项目提供,可以直接在 爱发电 ifdian.net 和 Payhip (暂时懒得上架) 上购买,无需通过其他方式联系我。此处列出的价格仅供参考,因为可能受到汇率影响,请以销售平台上的实际价格为准。

Caution

由于虚拟商品的特殊性和全自动发货机制
付款成功即收到唯一许可证编号,概不退换!
获得编号后您可以将其悬挂于您产品的关于板块以供社会监督。

自由许可证

如果您正在完全没有盈利的开源项目中使用,无需购买,直接使用即可。

  • 完全没有盈利的开源项目
  • 不能使用收款码、开通赞助、第三方广告
  • 必须完全开源
  • 在学校使用,用于完成学业或教学用途
  • 需要遵守 GPL-3.0 的其他条款

赞助许可证

顾名思义,如果您的项目只通过用户自愿赞助或第三方广告来盈利,选择此许可就对了,价格大约是 20 CNY。

  • 可以使用收款码、开通赞助、第三方广告
  • 可以是闭源或半开源
  • 不能有任何付费解锁的功能

商业许可证

显然,您需要项目的收益,不论您的项目是可选付费、强制付费、订阅制、买断制还是其他需要用户付费才能解锁的功能,选择此许可就对了,价格大约是 600 CNY。

  • 任何付费解锁的功能或服务
  • 任何付费模式

企业许可证

企业向来是不会使用 WinForms 的,所以不直接提供适用于企业的许可,当然如果确实需要,请联系我以定制订阅价格。

开源许可

LakeUI 使用 GPL-3.0-only 开源协议,如果正在使用免费的自由许可证,请遵守该协议的条款;如果使用赞助许可证、商业许可证、企业定制订阅,则可以不遵守该协议,无需询问我。

常见问题

为什么这些控件大多没有 AutoScroll、AutoSize 属性?

因为极大多数控件都是完全画上去的,本质上里面什么都没有,自然无法响应这些属性,所以干脆直接禁用了,如果有某些自动调整尺寸的需求可以用 Panel 灵活变通一下,很常见的设计思路。不过个别新绘制的控件专门做了适配。

我是否需要 SSAA 超采样抗锯齿?

如果有曲线则建议启用,能明显改善曲线观感,建议将选择权交给用户。如果你不确定是否需要或是想让用户决定的话,推荐在运行时直接设置 LakeUI.Class1.GlobalSSAA 这个属性,除非值为关闭,否则会覆盖所有控件的逻辑强行启用,所有控件会在下一次刷新时应用它。

SSAA 的运作原理是什么?需要额外花费多少性能?

前面提到控件的内容几乎都是画上去的,控件本身的区域可以看做是一个画布,当进行超采样绘制时会先在放大指定倍数的独立画布上进行绘制,再缩小到控件实际尺寸并画到控件本身的区域,也就是多出两个步骤,不过现代主流处理器完全能够在一瞬间完成。不过这里有一个特例,高 DPI 模式下由于有更多像素可供使用已经算是做了抗锯齿,虽然效果不如 SSAA,但在这种情况下再启用 SSAA 会导致性能消耗指数级增加,除非实在需要 SSAA 的细节效果否则不建议默认开启。

为什么文字总是在最顶层图层上?

SSAA 的属性说明中已经提到,文字需要兼容第三方渲染,所以走的是单独的渲染方式,而且总是在最后绘制,所以看起来就是在最顶层图层上了。

为什么使用 BackColor1 作为主要背景颜色而不是直接使用 BackColor?

很多控件都有圆角边框模式,因圆角而浪费掉的四个角落并不是透明的,搞这种透明要想有可观的质量会浪费大量性能,非常不值得,WinForms 自身不擅长这一块,所以被浪费掉的区域就使用原本的 BackColor 填充,正好 BackColor 能够自动同步容器属性值,当你改变容器的背景色时这个颜色也会跟着变化(前提是处于默认状态),这样就看不出来四个角落的瑕疵了,总结一下就是 BackColor 有自己的使命,而你需要单独设置背景颜色,所以要单开。

在开发过程中 AI 帮助你了多少?

这话可能不是很好听,绝大部分代码都来自 Claude Opus 4.6,但能够独立写出这一堆的人根本不会去做这些,那压根不是一般人,连一个文本框都要上千行代码,要想不依赖 AI 是不可能的,正是因为 Claude 强大的代码能力,这个项目才能够落地。

About

LakeUI 是专为 WinForms 项目设计的一套精致交互控件,官方中文名称 “湖界”。主打简单易用、精致美观、高度定制、高效性能,新手强推。

Topics

Resources

License

Stars

Watchers

Forks