- 清晰展示环境变量信息
- 高效进行 CRUD 操作
- 提升多值变量(如 PATH)的可读性
- 提供结构化编辑能力
- 降低误操作风险
设计原则:
- 简洁优先
- 信息层级清晰
- 操作路径直观
- 单一页面完成主要操作
采用经典「列表 + 详情面板」结构:
┌────────────────────────────────────────────┐
│ 菜单栏(文件 / 设置 / 帮助) │
├────────────────────────────────────────────┤
│ 顶部工具栏(刷新 / 新建 / 展示模式) │
├───────────────┬────────────────────────────┤
│ 左侧变量列表 │ 右侧编辑面板 │
│ (搜索 + 表格)│ (字段 + 结构化编辑) │
├───────────────┴────────────────────────────┤
│ 底部状态栏 │
└────────────────────────────────────────────┘
布局比例:
- 左侧列表:40%(
2*) - 右侧详情:60%(
3*) - 中间 GridSplitter 可拖拽调整
| 菜单 | 子项 | 功能 |
|---|---|---|
| 文件 | 导出 | 将全部变量导出为 JSON |
| 导入 | 从 JSON 文件导入变量 | |
| 打开数据目录 | 在资源管理器中打开存储目录 | |
| 退出 | 关闭应用 | |
| 设置 | 语言 | English / 简体中文 / 繁體中文 |
| 主题 | 浅色 / 深色 / 跟随系统 | |
| 显示 / 隐藏别名列 | 切换是否在列表中显示别名 | |
| 最大历史记录 | 每个变量保存的历史版本数量 | |
| 日志 | 配置日志级别和保留时间等 | |
| 帮助 | ⭐ Star on GitHub | 在浏览器中打开 GitHub 项目主页 |
| 报告问题 | 在浏览器中打开 GitHub Issues 页面 | |
| 检查更新... | 检查是否有新版本并提示下载 | |
| 关于 | 显示应用信息 |
| 按钮 | 功能 |
|---|---|
| 刷新 | 重新从注册表加载环境变量 |
| 新建 | 右侧面板进入新建模式 |
| 展示模式 | 下拉选择:Grouped(默认) / Merged |
右侧面板顶部显示当前数据文件路径(只读)。
列表顶部搜索框,空时显示灰色放大镜图标作为暗示,实时按 Name / Alias / Value 过滤。
| 列名 | 绑定属性 | 说明 |
|---|---|---|
| Name | NameDisplay |
环境变量名(多值变量加 [LIST] 前缀) |
| Alias | Alias |
用户自定义名称 |
| Level | Level |
User / System |
| Preview | Preview |
值预览(截断显示) |
点击列头排序,三次点击循环:升序(▲)→ 降序(▼)→ 重置。
Grouped 模式下按 Level 分组,每组显示分组标题。
- 单击变量:右侧加载详情
- 当前选中行高亮
| 字段 | 类型 | 说明 |
|---|---|---|
| Name | 文本框 | 变量名 |
| Level | 下拉框 | User / System |
| Alias | 文本框 | 用户自定义名称 |
| Description | 多行文本框 | 备注说明(常见变量会自动填充预设描述) |
| Value | 多行文本框(等宽字体) | 变量值,默认紧凑显示,限制最大高度并在内容过多时提供内部滚动 |
字段标签列采用自动宽度(SharedSizeGroup),确保中英文模式下标签与输入框间距一致且紧凑。所有字段容器(包含结构化编辑区)均包裹在 ScrollViewer 中,以保证在面板空间有限时可滚动访问所有内容。
操作按钮固定在右侧面板底部,不随上方内容滚动,始终保持可见。
- 保存:写入注册表和元数据
- 删除:仅编辑已有变量时可用,需确认
- 取消:恢复为选中项原始内容或回到新建模式
- 历史:弹出当前变量的历史版本列表(数量上限可在设置中自定义,范围 0-10,默认为 5 条),选择后将 Value、Alias、Description 加载到编辑器(不自动保存);仅编辑已有变量时可用
当变量值包含分号时自动显示。
| 按钮 | 功能 |
|---|---|
| + | 在选中项后插入新行 |
| - | 删除选中行 |
| ↑ | 选中项上移 |
| ↓ | 选中项下移 |
| A↓ | 全部按字母升序排列 |
| Z↓ | 全部按字母降序排列 |
- 每项可直接编辑(透明背景 TextBox)
- 显示序号索引
[0]、[1]、…… - 编辑后自动同步回 Value 字符串
显示最近一次操作的反馈信息,如:
- 「已加载 42 个环境变量。」
- 「已保存 JAVA_HOME@User。」
- 「已从历史记录恢复值。」
显示以下信息:
- 更新日期(取应用构建日期)
- 作者
- 许可证
- 项目地址(可点击跳转)
- 点击「新建」
- 右侧清空,进入新建模式
- 填写字段,点击保存
- 左侧选中变量
- 右侧加载数据
- 修改字段,点击保存
- 系统自动对多值变量(如 PATH)进行去重处理并保存
- 选中变量
- 点击删除 → 弹出确认对话框
- 确认后删除
保存时如果目标 Name + Level 已存在(且不是当前变量自身),弹出覆盖确认。
- 风格:简洁工具化,浅色背景
- 等宽字体用于 Value 展示(Cascadia Code)
- 控件间距 ≥ 8px,面板内边距 ≥ 12px
- 圆角卡片式区域划分(CornerRadius = 6~8)
- 权限不足:提示以管理员身份重新启动
- 保存 / 删除失败:在状态栏和弹窗中提示
- 非法输入(空名称、名称含
=):保存时校验并提示
- 窗口位置与大小:自动记忆并恢复上次正常关闭时的窗口状态。
- 安全检查:恢复位置时,必须确保窗口 100% 完整显示在当前所有显示器的可见范围内;若有任何部分超出边界,则自动重置到主屏幕中心,确保用户始终能看到完整界面。