Terminal.Gui:.Net构建跨平台终端的框架

推荐一个.Net基于控制台跨平台的终端的框架,方便我们创建丰富用户界面应用程序。

01 项目简介

Terminal.Gui 是一个基于 .NET 的跨平台终端用户界面库,它允许开发者使用 C#创建终端应用程序,而无需依赖于传统的图形界面元素。该库提供了一套类似于 Windows Forms 或 WPF 的编程模型,但是专为文本模式的终端设计。

02 项目特点

**1、跨平台:**职场多种操作系统上运行,包括 Windows、macOS 和 Linux。

2、控件丰富:该库提供了一系列的 UI 控件,如按钮(Button)、标签(Label)、文本框(TextField)、列表(ListView)和窗口(Window)。

3、事件驱动:采用事件驱动的编程模型,使得开发者可以为控件定义响应用户输入的事件处理器。

4、键盘和鼠标支持:同时支持键盘和鼠标输入,为终端应用程序提供更丰富的交互方式。

5、高度可定制:开发者可以根据需要定制 UI 的外观,包括颜色、尺寸和布局等。

03 使用方法

1、示例代码

复制代码
using Terminal.Gui;

Application.Init();
var win = new Window("Hello World")
{
    X = Pos.Center(),
    Y = Pos.Center(),
    Width = 50,
    Height = 10
};
var btn = new Button("确定")
{
    X = 5,
    Y = 5
};
btn.Clicked += () => {
    MessageBox.Query("提示", "你点击了确定!", "Ok");
};
win.Add(btn);

Application.Run(win);

2、效果

运行效果

点击确定后的效果

04 项目地址

https://github.com/gui-cs/Terminal.Gui

  • End -

我是编程乐趣,一个.Net开发经验老程序员,欢迎"关注"我,每天为你分享开源项目和编程知识。

也欢迎加入【.Net技术编程交流社区】,和大家共同学习交流!,点击加入https://bbs.csdn.net/topics/613465368

推荐阅读

Coravel:一个可轻松实现任务调度、队列、邮件发送的开源项目

FluentAssertions:C#单元测试断言库,让测试代码更加直观、易读!

ImageSharp:高性能跨平台.NET开源图形库

ExcelDataReader:一个.Net高性能Excel开源读取器

Flurl:一个Star 3.9K的链式RESTful风格HTTP开源.Net库

相关推荐
唐青枫1 天前
别把 ImmutableArray 当成只读 List:C#.NET 不可变数组深入详解
c#·.net
微小冷2 天前
海康威视相机C#二次开发环境配置
数码相机·c#·.net·海康威视·相机开发
唐青枫2 天前
别只会解析参数:C#.NET Spectre.Console.Cli 命令行工具实战详解
c#·.net
rockey6273 天前
基于AScript的Lua脚本语言发布啦
c#·.net·lua·script·动态脚本
半亩码田3 天前
【.NET新特性·第11篇】C# 14 字段属性:告别手写 backing field
java·c#·.net
唐青枫3 天前
别再把命令行参数写成一团:C#.NET System.CommandLine 实战详解
c#·.net
hez20103 天前
让 .NET 11 的泛型虚方法变得更快!
c#·.net·.net core·clr·compiler
宝桥南山3 天前
Microsoft Agent Framework(.NET) - 尝试一下从MCP Server上获取Agent Skills
ai·微软·c#·aigc·.net·.netcore
海盗12344 天前
微软技术日报·2026-08-12——Windows 11多通道累积更新推送十余项功能改进;.NET WebSocket DoS紧急修复
windows·microsoft·.net
唐青枫5 天前
别再手写 args[0]:C#.NET CommandLineParser 命令行工具实战详解
c#·.net