mcpField
S
syncfusion-winforms-toggle-button

syncfusion-winforms-toggle-button

github.com/syncfusion设计与 UI279 次安装1 周前更新
代码仓库

关于 syncfusion-winforms-toggle-button

面向 Windows Forms 开发者的 Syncfusion Toggle Button 实现指南,介绍双态切换控件及其配置方法,涵盖显示模式、样式和事件处理。

主要功能

  1. 01活动与非活动状态
  2. 02文本或图像显示
  3. 03按状态设置颜色
  4. 04支持自定义渲染器
  5. 05处理状态变更事件

适用场景

  1. 01创建开/关或是/否控件
  2. 02分别设置两种状态的样式
  3. 03在切换控件中显示文本或图像
  4. 04响应状态变化

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/syncfusion/winforms-ui-components-skills --skill syncfusion-winforms-toggle-button

安装后在 Claude Code 中输入/syncfusion-winforms-toggle-button确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
custom-styling.md
display-modes.md
events-and-interaction.md
getting-started.md
toggle-states.md

详细介绍

实现 Syncfusion Windows Forms Toggle Button

欢迎阅读 Toggle Button 实现指南。Toggle Button 控件支持在两种截然不同的状态(启用和未启用)之间切换,并提供全面的自定义选项。

何时使用此技能

在以下情况下使用此技能:

  • 创建具有两种截然不同状态(开/关、是/否等)的切换按钮
  • 自定义启用和未启用状态的外观
  • 在文本和图像显示模式之间切换
  • 使用渲染器实现自定义样式
  • 处理切换事件和状态变化
  • 使用切换控件构建交互式 Windows Forms 应用程序

组件概述

Toggle Button 是一个 Windows Forms 控件,用于呈现两种不同的状态:

  • 启用状态:通常用于表示“开”、“是”或已启用的条件
  • 未启用状态:通常用于表示“关”、“否”或已禁用的条件

用户可以单击按钮或按空格键在两种状态之间切换。

主要功能
  • 可配置的启用和未启用状态,且各自具有独立的样式
  • 显示模式:文本或图像
  • 状态变化事件处理
  • 支持自定义渲染
  • 可分别自定义每种状态的颜色和边框

文档和导航指南

入门

📄 阅读: references/getting-started.md

  • 程序集依赖项和 NuGet 设置
  • 通过设计器添加 Toggle Button
  • 通过代码添加 Toggle Button
  • 命名空间导入和基本初始化
切换状态配置

📄 阅读: references/toggle-states.md

  • 了解启用和未启用状态
  • 以编程方式设置切换状态
  • 自定义启用状态(颜色、文本、悬停效果)
  • 自定义未启用状态(颜色、文本、悬停效果)
  • 状态转换和切换
显示模式

📄 阅读: references/display-modes.md

  • 配置文本显示模式
  • 配置图像显示模式
  • 在显示模式之间切换
  • 使用场景和最佳实践
自定义样式和渲染器

📄 阅读: references/custom-styling.md

  • 自定义渲染器实现
  • 实现 IToggleButtonRenderer 接口
  • 指定自定义渲染器
  • 高级样式和外观自定义
事件和交互

📄 阅读: references/events-and-interaction.md

  • 处理状态变化事件
  • 鼠标单击交互
  • 键盘交互(空格键)
  • 事件模式和最佳实践

快速入门示例

下面是创建和配置 Toggle Button 的最简示例:

using Syncfusion.Windows.Forms.Tools;
using System.Drawing;

// Create and add Toggle Button to form
ToggleButton toggleButton = new ToggleButton();
toggleButton.Location = new System.Drawing.Point(50, 50);
toggleButton.Size = new System.Drawing.Size(100, 40);
toggleButton.Name = "toggleButton1";

// Configure Active state
toggleButton.ActiveState.Text = "ON";
toggleButton.ActiveState.BackColor = Color.FromArgb(1, 115, 199);
toggleButton.ActiveState.ForeColor = Color.White;

// Configure Inactive state
toggleButton.InactiveState.Text = "OFF";
toggleButton.InactiveState.BackColor = Color.White;
toggleButton.InactiveState.ForeColor = Color.FromArgb(80, 80, 80);

// Set initial state
toggleButton.ToggleState = ToggleButtonState.Inactive;

// Add to form
this.Controls.Add(toggleButton);

常见模式

模式 1:二元状态切换

创建一个简单的开/关切换按钮,用于布尔设置:

toggleButton.ActiveState.Text = "ON";
toggleButton.InactiveState.Text = "OFF";
toggleButton.ToggleState = ToggleButtonState.Inactive;
模式 2:是/否切换

创建一个决策切换按钮:

toggleButton.ActiveState.Text = "YES";
toggleButton.InactiveState.Text = "NO";
模式 3:基于状态的颜色

应用不同颜色,以直观地表示状态:

// Active - Green
toggleButton.ActiveState.BackColor = Color.FromArgb(34, 177, 76);
toggleButton.ActiveState.ForeColor = Color.White;

// Inactive - Red
toggleButton.InactiveState.BackColor = Color.FromArgb(192, 0, 0);
toggleButton.InactiveState.ForeColor = Color.White;
模式 4:为每种状态设置自定义文本

为每种状态提供描述性标签:

toggleButton.ActiveState.Text = "Enabled";
toggleButton.InactiveState.Text = "Disabled";

主要属性

属性用途常见值
ToggleState按钮的当前状态ToggleButtonState.Active、ToggleButtonState.Inactive
ActiveState.Text启用时显示的文本“开”、“是”、“已启用”
InactiveState.Text未启用时显示的文本“关”、“否”、“已禁用”
ActiveState.BackColor启用时的背景颜色颜色值
InactiveState.BackColor未启用时的背景颜色颜色值
DisplayMode要显示的内容DisplayType.Text、DisplayType.Image
Renderer自定义外观渲染IToggleButtonRenderer 实现

程序集依赖项

若要使用 Toggle Button,请将以下程序集添加到项目中:

  • Syncfusion.Grid.Base
  • Syncfusion.Grid.Windows
  • Syncfusion.Shared.Base
  • Syncfusion.Shared.Windows
  • Syncfusion.Tools.Base
  • Syncfusion.Tools.Windows

后续步骤

  1. 从入门开始 - 安装依赖项并添加控件
  2. 配置状态 - 自定义激活和未激活时的外观
  3. 选择显示模式 - 文本或图像显示
  4. 添加样式 - 根据需要应用自定义渲染器
  5. 处理事件 - 在应用程序中响应状态变化

评论

支持 Markdown