关于 syncfusion-maui-combobox
这是一个面向 .NET MAUI 开发者的技能指南,介绍 Syncfusion SfComboBox 的实现与配置。内容涵盖可编辑选择、筛选搜索、多选和界面定制,并提供各功能的文档导航。
主要功能
- 01可编辑与只读选择模式
- 02单选、多选及令牌显示
- 03内置筛选与自定义筛选
- 04数据绑定和显示格式配置
- 05下拉列表样式与模板定制
- 06搜索文本高亮和加载更多
适用场景
- 01构建可搜索的下拉选择控件
- 02为表单实现多项选择
- 03为大型选项集配置加载更多
- 04自定义下拉项及页眉页脚
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ syncfusion/ maui-ui-components-skills --skill syncfusion-maui-combobox安装后在 Claude Code 中输入/syncfusion-maui-combobox确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/advanced-features.mdai-smart-searching.mdediting-modes.mdevents-and-methods.mdfiltering.mdgetting-started.mdheader-footer.mdhighlighting-text.mdsearching.mdselection.mdui-customization.md详细介绍
实现 .NET MAUI ComboBox
Syncfusion .NET MAUI ComboBox(SfComboBox)是一种功能强大的选择控件,允许用户输入值或从预定义选项列表中选择选项。它结合了下拉列表和可编辑文本框的功能,支持数据绑定、筛选、搜索、单选/多选以及丰富的自定义选项。
何时使用此技能
当用户需要以下功能时,请使用此技能:
- 实现下拉选择控件,支持可编辑或不可编辑的文本输入
- 启用可搜索的下拉列表,支持筛选和自动完成
- 支持多种选择模式,以标记或分隔符形式显示
- 将集合中的数据绑定到下拉列表,并自定义显示格式
- 应用自定义筛选逻辑,包括 AI 驱动的智能搜索
- 自定义下拉列表 UI,包括标题、页脚、项模板和样式
- 在搜索操作期间突出显示匹配文本
- 为大型数据集实现加载更多功能
- 创建可访问的选择控件,并提供适当的自动化支持
组件概述
主要功能:
- 可编辑和不可编辑模式: 可切换为允许自由输入文本或仅从下拉列表中选择
- 单选和多选: 支持单项或多项选择,并以标记或分隔符形式显示
- 筛选和搜索: 内置文本筛选,支持 StartsWith/Contains 模式和自定义筛选逻辑
- 数据绑定: 可绑定到任意 IEnumerable 源,并使用 DisplayMemberPath 和 TextMemberPath
- UI 自定义: 提供丰富的下拉列表、项、标记、标题和页脚样式选项
- 智能功能: AI 驱动的搜索、文本突出显示、加载更多、自动调整大小
- 事件和方法: 提供丰富的事件模型,用于处理选择更改、下拉列表状态和用户交互
文档和导航指南
入门
📄 阅读: references/getting-started.md
- 安装和 NuGet 包配置(Syncfusion.Maui.Inputs)
- 注册 Syncfusion Core 处理程序(ConfigureSyncfusionCore)
- 使用 XAML 和 C# 实现基本的 ComboBox
- 使用 ItemsSource、DisplayMemberPath、TextMemberPath 进行数据绑定
- 最简可运行示例
编辑模式
📄 阅读: references/editing-modes.md
- 使用 IsEditable 属性设置可编辑/不可编辑模式
- 使用 IsClearButtonVisible 控制清除按钮
- 使用 Text 属性获取/设置输入文本
- 管理 CursorPosition
选择
📄 阅读: references/selection.md
- 单选(SelectedItem、SelectedIndex)
- 多选(SelectionMode、SelectedItems)
- 多选显示模式(Token、Delimiter)
- TokensWrapMode(Wrap、None)
- SelectedValue 和 SelectedValuePath
- SelectionChanging 和 SelectionChanged 事件
- 以编程方式进行选择以及使用 Clear 方法
筛选
📄 阅读: references/filtering.md
- 使用 IsFilteringEnabled 启用筛选
- 筛选模式(StartsWith、Contains)
- 使用 IComboBoxFilterBehavior 进行自定义筛选
- 实现 GetMatchingIndexes 以自定义筛选逻辑
- MinimumPrefixCharacters 限制
搜索
📄 阅读: references/searching.md
- 配置 TextSearchMode(StartsWith、Contains)
- 根据 DisplayMemberPath 和 TextMemberPath 进行搜索
- 编辑模式下的搜索行为
- 前缀字符限制(MinimumPrefixCharacters)
UI 自定义
📄 阅读: references/ui-customization.md
- 占位符和颜色
- 清除按钮和下拉图标自定义
- 边框样式(Stroke、ShowBorder)
- MaxDropDownHeight 配置
- 使用 ItemTemplate 和 DataTemplateSelector 自定义项的呈现方式
- 下拉框样式(Background、Stroke、StrokeThickness、CornerRadius、Shadow)
- 下拉项样式(Font、Color、Height、Padding)
- DropDownPlacement(Top、Bottom、Auto、None)
- DropDownButtonSettings 自定义
- 令牌项样式
- 文本对齐和光标位置
- ReturnType 键盘行为设置
- ShowSuggestionsOnFocus
- 支持 AutomationId 以进行 UI 测试
页眉和页脚
📄 阅读: references/header-footer.md
- 使用 ShowDropDownHeaderView 添加页眉视图
- 使用 ShowDropDownFooterView 添加页脚视图
- 页眉和页脚的自定义模板
- 高度配置
文本高亮
📄 阅读: references/highlighting-text.md
- TextHighlightMode(FirstOccurrence、MultipleOccurrence)
- 自定义高亮颜色和字体属性
- 在 StartsWith 和 Contains 模式下进行高亮
高级功能
📄 阅读: references/advanced-features.md
- 使用 EnableAutoSize 自动调整大小
- NoResultsFoundText 和 NoResultsFoundTemplate
- 加载更多功能(MaximumSuggestion、LoadMoreText、LoadMoreTemplate)
- 使用 IsDropDownOpen 进行程序化控制
- ReturnCommand 和 ReturnCommandParameter
- Liquid Glass 效果(EnableLiquidGlassEffect)
事件和方法
📄 阅读: references/events-and-methods.md
- SelectionChanging 事件(包含 Cancel 选项)
- SelectionChanged 事件(AddedItems、RemovedItems)
- ValueChanged 事件(OldValue、NewValue)
- Completed 事件
- DropDownOpening、DropDownOpened、DropDownClosed 事件
- ClearButtonClicked 事件
- LoadMoreButtonTapped 事件
- Clear() 方法
AI 智能搜索
📄 阅读: references/ai-smart-searching.md
- 集成 Azure OpenAI 实现智能搜索
- 实现 IComboBoxFilterBehavior 以进行 AI 过滤
- 通过提示词工程提升结果准确性
- 使用 CancellationToken 进行异步过滤
- 回退机制(Soundex、Levenshtein 算法)
评论
支持 Markdown