QianToolsUI.Controls 1.1.8

dotnet add package QianToolsUI.Controls --version 1.1.8
                    
NuGet\Install-Package QianToolsUI.Controls -Version 1.1.8
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="QianToolsUI.Controls" Version="1.1.8" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="QianToolsUI.Controls" Version="1.1.8" />
                    
Directory.Packages.props
<PackageReference Include="QianToolsUI.Controls" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add QianToolsUI.Controls --version 1.1.8
                    
#r "nuget: QianToolsUI.Controls, 1.1.8"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package QianToolsUI.Controls@1.1.8
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=QianToolsUI.Controls&version=1.1.8
                    
Install as a Cake Addin
#tool nuget:?package=QianToolsUI.Controls&version=1.1.8
                    
Install as a Cake Tool

QianToolsUI

WPF 现代 UI 控件库和 MVVM 工具集,面向工业自动化 HMI/SCADA 场景。

🎨 主题

主题 风格 适用场景
Light 知乎深蓝 #2254F4,现代明亮 通用桌面应用
Dark 暗色护眼 编码工具,夜间使用
Industrial 工业灰蓝,钢蓝配色 工控上位机 HMI/SCADA
IndustrialDark 深蓝黑底,钢蓝强调 监控大屏,暗房环境
ThemeService.LoadTheme("Industrial"); // 运行时一键切换

📦 安装

dotnet add package QianToolsUI.Controls

🧩 控件清单

自定义控件(25 个)

输入类
控件 说明 用法
WatermarkTextBox 水印文本框 <ctrl:WatermarkTextBox Watermark="请输入..." />
NumericUpDown 数值调节 <ctrl:NumericUpDown Value="25" Minimum="0" Maximum="100" />
SearchBar 搜索框 <ctrl:SearchBar Placeholder="搜索..." />
IpTextBox IP 地址输入 <ctrl:IpTextBox IpAddress="192.168.1.1" />
PinBox 验证码/PIN 输入 <ctrl:PinBox Length="6" IsPrivacy="True" />
TimePicker 时间选择 <ctrl:TimePicker />
ColorPicker 颜色选择器 <ctrl:ColorPicker SelectedColor="Blue" />
状态指示
控件 说明 用法
StatusIndicator I/O 点位指示器 <ctrl:StatusIndicator Shape="Circle" State="On" />
Badge 角标 <ctrl:Badge BadgeText="99+" BadgeType="Danger">...
Tag 标签/Chip <ctrl:Tag Content="运行中" TagType="Success" Closable="True" />
Shield 徽章 <ctrl:Shield Content="故障" ShieldType="Danger" Count="3" />
进度与仪表
控件 说明 用法
CircleProgressBar 环形进度(Ring/Stripe) <ctrl:CircleProgressBar Value="75" StrokeThickness="10" />
WaveProgressBar 波浪液位 <ctrl:WaveProgressBar Value="75" />
DigitalDisplay LED 数码管 <ctrl:DigitalDisplay Value="387.2" Unit="V" Label="A相电压" />
StepBar 步骤条 <ctrl:StepBar ActiveIndex="2">
容器
控件 说明 用法
Card 卡片容器 <ctrl:Card Title="标题">...
GroupBox 分组面板 <ctrl:GroupBox Header="设备控制">...
Expander 折叠面板 <ctrl:Expander Header="参数设置">...
FormItem 表单项(Left/Top + 验证) <ctrl:FormItem Header="标签" LabelPosition="Top">...
DashboardPanel 仪表盘面板 <ctrl:DashboardPanel Header="📊 监控">...
反馈
控件 说明 用法
Growl 全局通知 Growl.Success("操作完成")
QianMessageBox 模态弹窗 QianMessageBox.Info("提示")
Notification 顶部通知条 Notification.Show("消息", NotificationType.Success)
Empty 空状态占位 <ctrl:Empty Description="暂无数据" />
数据
控件 说明 用法
Transfer 穿梭框 <ctrl:Transfer ItemsSource="{Binding All}" SelectedItems="{Binding Sel}" />
Pagination 分页 <ctrl:Pagination Total="200" PageSize="20" CurrentPage="3" />

标准控件样式(15 类)

Button(7变体) / TextBox / PasswordBox / ComboBox / CheckBox(Switch) / RadioButton / ProgressBar / Slider / TabControl / DataGrid / ListBox / ListView / TreeView / ScrollBar / Calendar(DatePicker) / ContextMenu / ToolTip

核心库(QianToolsUI)

MVVM 基础:ObservableObject / RelayCommand / AsyncRelayCommand 值转换器 / 附加行为 / 标记扩展 多语言:LocalizationService.Switch("en") / {Loc KeyName} 标记扩展

🌐 多语言

支持 中文 / English / 日本語:

LocalizationService.Switch("en"); // 切换到英文
string label = LocalizationService.Get("Common.OK"); // 获取本地化字符串
<TextBlock Text="{markup:Loc Common.Search}" />

🚀 代码示例

// 主题切换
ThemeService.LoadDark();

// 通知
Growl.Success("操作成功");
Notification.Show("连接失败", NotificationType.Error);

// 多语言
LocalizationService.Switch("en");

<ctrl:StatusIndicator Shape="Square" InteractionMode="Toggle"
    Label="电机 M1" Address="Q0.0" />


<ctrl:PinBox Length="6" IsPrivacy="True" />


<ctrl:FormItem Header="设备名称" IsRequired="True"
               LabelPosition="Top" Description="PLC 标识">
    <ctrl:WatermarkTextBox Watermark="请输入" />
</ctrl:FormItem>


<ctrl:DashboardPanel Header="📊 电气参数">
    <WrapPanel>
        <ctrl:CircleProgressBar Value="72" StrokeThickness="10"
                                Foreground="{DynamicResource Brush.Selection}" />
        <ctrl:DigitalDisplay Value="387.2" Unit="V" Label="电压" />
        <ctrl:WaveProgressBar Value="65" />
    </WrapPanel>
</ctrl:DashboardPanel>


<ctrl:Transfer ItemsSource="{Binding AllDevices}"
               SelectedItems="{Binding SelectedDevices}"
               HeaderLeft="可用设备" HeaderRight="已选设备"
               DisplayMemberPath="Name" />


<ctrl:StepBar ActiveIndex="2">
    <ctrl:StepBarItem Content="原料准备" />
    <ctrl:StepBarItem Content="加工处理" />
    <ctrl:StepBarItem Content="质量检测" />
</ctrl:StepBar>

📊 项目结构

QianToolsUI/
├── src/
│   ├── QianToolsUI/                  # 核心库 (net8.0/9.0/10.0)
│   │   ├── MVVM/                     # ObservableObject, RelayCommand
│   │   ├── Converters/               # 值转换器
│   │   ├── Behaviors/                # 附加行为
│   │   ├── Markup/                   # LocExtension, EnumBinding
│   │   ├── Services/                 # LocalizationService
│   │   └── Langs/                    # 语言包 (zh-CN/en/ja)
│   ├── QianToolsUI.Controls/         # 控件库 (net8.0)
│   │   ├── Controls/                 # 25 个自定义控件
│   │   ├── Themes/                   # 4 套主题 + 15 类样式
│   │   ├── Converters/               # 控件专用转换器
│   │   └── Theming/                  # ThemeService
│   └── QianToolsUI.Demo/            # 演示应用
│       ├── Views/                   # 9 个展示页面
│       └── ViewModels/

🔧 集成

App.xaml

<Application.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="/QianToolsUI.Controls;component/Themes/Generic.xaml" />
        </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
</Application.Resources>

📄 许可

MIT License

Product Compatible and additional computed target framework versions.
.NET net8.0-windows7.0 is compatible.  net9.0-windows was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.1.8 136 8/7/2026
1.1.2 115 8/7/2026
1.0.4 114 8/6/2026
1.0.3 105 8/6/2026
1.0.2 114 8/6/2026
1.0.1 116 8/6/2026
1.0.0 118 8/5/2026