Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问许可证需确认审计通过

syncfusion-wpf-multi-column-dropdownsyncfusion wpf 多列下拉列表

Agent Skill

syncfusion-wpf-multi-column-dropdown 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

964

周安装

41

GitHub Stars

2

下载量

338
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:syncfusion-wpf-multi-column-dropdown(syncfusion wpf 多列下拉列表)
来源仓库:https://github.com/syncfusion/wpf-ui-components-skills
仓库路径:skills/syncfusion-wpf-multi-column-dropdown
安装命令:
npx skills add https://github.com/syncfusion/wpf-ui-components-skills --skill syncfusion-wpf-multi-column-dropdown
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/syncfusion/wpf-ui-components-skills --skill syncfusion-wpf-multi-column-dropdown

简介

用于查找、检索和筛选相关信息,适合快速定位候选结果。

  • 支持基于关键词、任务场景或来源线索进行信息筛选与匹配。
  • 通过 npx skills add 命令从指定 GitHub 仓库安装使用。
  • 建议确认权限范围和维护状态,避免触发联网或文件读写操作。
  • syncfusion-wpf-multi-column-dropdown 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Implementing Syncfusion WPF Multi Column Dropdown

The SfMultiColumnDropDownControl combines a TextBox editor with a powerful SfDataGrid to provide a searchable, filterable dropdown control that displays multiple columns. It supports autocomplete, incremental filtering, single and multi-selection modes, and extensive customization options.

Component Overview

SfMultiColumnDropDownControl is a composite control that embeds a SfDataGrid within a dropdown popup, enabling users to:

  • Search and filter items by typing in the editor
  • View multiple columns of data in the dropdown
  • Select single or multiple items from the grid
  • Autocomplete text based on DisplayMember
  • Customize popup appearance, columns, and behavior

Key capabilities:

  • Data binding to any IEnumerable source
  • Automatic or manual column generation
  • Case-sensitive and diacritic-sensitive filtering
  • Complex and indexer property binding
  • Keyboard navigation and accessibility support
  • Resizable popup with customizable appearance

When to Use This Skill

Use this skill when you need to:

  • Create a WPF dropdown that displays multiple columns of data
  • Implement searchable/filterable dropdown lists with grid view
  • Build dropdown controls with autocomplete and incremental filtering
  • Allow users to select items from a multi-column data grid
  • Create editable dropdowns with complex data binding
  • Implement dropdowns with single or multi-selection support
  • Customize dropdown popup appearance and behavior
  • Add keyboard navigation to dropdown controls

Documentation and Navigation Guide

Getting Started

📄 Read: references/getting-started.md

Use this when:

  • Setting up the control for the first time
  • Understanding assembly requirements
  • Adding control via Designer, XAML, or C#
  • Creating basic data models
  • Binding initial ItemsSource
  • Defining DisplayMember and ValueMember

Topics covered:

  • Assembly deployment (Syncfusion.Data.WPF, Syncfusion.SfGrid.WPF)
  • Creating WPF application with SfMultiColumnDropDownControl
  • Adding control via Designer, XAML, and code-behind
  • Basic ItemsSource binding
  • DisplayMember and ValueMember configuration
  • Theme support

Data Binding

📄 Read: references/data-binding.md

Use this when:

  • Binding data to the dropdown control
  • Understanding DisplayMember vs ValueMember
  • Working with complex properties
  • Using indexer properties
  • Accessing SelectedItem and SelectedValue

Topics covered:

  • ItemsSource property usage
  • DisplayMember (visual presentation in editor)
  • ValueMember (value for SelectedValue property)
  • Binding collections in XAML and code-behind
  • Complex property binding (e.g., customerDetails.Name)
  • Indexer property binding (e.g., Country[0])

Columns Configuration

📄 Read: references/columns.md

Use this when:

  • Configuring dropdown grid columns
  • Auto-generating or manually defining columns
  • Customizing column types and templates
  • Handling AutoGeneratingColumn event
  • Setting column sizing and width

Topics covered:

  • AutoGenerateColumns property
  • AutoGenerateColumnMode (Reset, RetainOld, ResetAll, None)
  • Manually defining columns collection
  • Column types (GridTextColumn, GridCurrencyColumn, etc.)
  • AutoGeneratingColumn event for customization
  • Column templates (HeaderTemplate, CellTemplate)
  • GridColumnSizer for width management

Editing and Filtering

📄 Read: references/editing-autocomplete.md

Use this when:

  • Enabling autocomplete functionality
  • Implementing incremental filtering
  • Configuring search conditions
  • Filtering based on multiple columns
  • Customizing editor behavior

Topics covered:

  • AllowAutoComplete for text suggestions
  • AllowIncrementalFiltering for live filtering
  • SearchCondition (StartsWith, Contains, Equals)
  • AllowCaseSensitiveFiltering option
  • AllowDiacriticSensitiveFiltering option
  • Editor properties (ReadOnly, AllowNullInput, AllowSpinOnMouseWheel)
  • FilterRecord method override for custom filtering
  • SearchText property for multi-column filtering

Selection

📄 Read: references/selection.md

Use this when:

  • Implementing single or multi-selection
  • Accessing selected items programmatically
  • Handling selection changes
  • Customizing multi-select separator
  • Working with selection events

Topics covered:

  • SelectionMode (Single, Multiple)
  • SelectedItem, SelectedIndex, SelectedValue properties
  • SelectedItems collection for multi-select
  • SelectionChanged event
  • SeparatorString for multi-select display
  • TextSelectionOnFocus property
  • Programmatic selection
  • Selector column with checkboxes

Popup Customization

📄 Read: references/popup-customization.md

Use this when:

  • Customizing popup appearance
  • Configuring popup size and resizing
  • Setting popup background and borders
  • Handling popup events
  • Adding custom headers to dropdown

Topics covered:

  • Popup appearance (Background, BorderBrush, BorderThickness)
  • Popup sizing (PopupHeight, PopupWidth, Min/Max values)
  • IsAutoPopupSize for automatic sizing
  • Resizing with resize thumb
  • PopupContentTemplate and HeaderTemplate
  • Popup events (Opening, Opened, Closing, Closed)
  • StaysOpen property
  • Custom control in dropdown header

Keyboard and Accessibility

📄 Read: references/keyboard-accessibility.md

Use this when:

  • Implementing keyboard navigation
  • Ensuring accessibility compliance
  • Setting up UI automation
  • Configuring coded UI tests
  • Understanding keyboard shortcuts

Topics covered:

  • Keyboard shortcuts (Enter, Esc, F4, Alt+Arrows, Up/Down)
  • Keyboard navigation patterns
  • UI Automation support
  • Coded UI Test properties and methods
  • QTP (Quick Test Professional) support
  • Accessibility features

Quick Start

Basic Implementation

<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:syncfusion="http://schemas.syncfusion.com/wpf"
        xmlns:local="clr-namespace:YourNamespace">
    <Window.DataContext>
        <local:ViewModel/>
    </Window.DataContext>

    <Grid>
        <syncfusion:SfMultiColumnDropDownControl
            x:Name="sfMultiColumn"
            Width="200"
            Height="30"
            ItemsSource="{Binding Orders}"
            DisplayMember="CustomerName"
            ValueMember="OrderID"
            SelectedIndex="0"/>
    </Grid>
</Window>

Code-Behind Setup

using Syncfusion.UI.Xaml.Grid;
using System.Collections.ObjectModel;

namespace YourNamespace
{
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();

            // Create control programmatically
            SfMultiColumnDropDownControl sfMultiColumn = new SfMultiColumnDropDownControl();
            sfMultiColumn.Width = 200;
            sfMultiColumn.Height = 30;
            sfMultiColumn.ItemsSource = viewModel.Orders;
            sfMultiColumn.DisplayMember = "CustomerName";
            sfMultiColumn.ValueMember = "OrderID";

            // Add to layout
            Root_Grid.Children.Add(sfMultiColumn);
        }
    }

    // Data Model
    public class OrderInfo
    {
        public int OrderID { get; set; }
        public string CustomerName { get; set; }
        public string CustomerID { get; set; }
        public string Country { get; set; }

        public OrderInfo(int orderId, string customerName, string customerId, string country)
        {
            OrderID = orderId;
            CustomerName = customerName;
            CustomerID = customerId;
            Country = country;
        }
    }

    // ViewModel
    public class ViewModel
    {
        public ObservableCollection<OrderInfo> Orders { get; set; }

        public ViewModel()
        {
            Orders = new ObservableCollection<OrderInfo>
            {
                new OrderInfo(1001, "Maria Anders", "ALFKI", "Germany"),
                new OrderInfo(1002, "Ana Trujilo", "ANATR", "Mexico"),
                new OrderInfo(1003, "Thomas Hardy", "AROUT", "UK")
            };
        }
    }
}

Common Patterns

Pattern 1: Filterable Dropdown with Autocomplete

<syncfusion:SfMultiColumnDropDownControl
    x:Name="sfMultiColumn"
    ItemsSource="{Binding Orders}"
    DisplayMember="CustomerName"
    ValueMember="OrderID"
    AllowAutoComplete="True"
    AllowIncrementalFiltering="True"
    SearchCondition="Contains"
    SelectedIndex="0"/>

Pattern 2: Multi-Selection Dropdown

<syncfusion:SfMultiColumnDropDownControl
    x:Name="sfMultiColumn"
    ItemsSource="{Binding Orders}"
    DisplayMember="CustomerName"
    ValueMember="OrderID"
    SelectionMode="Multiple"
    SeparatorString=", "/>

Access selected items:

// Get all selected items
var selectedItems = sfMultiColumn.SelectedItems;

// Programmatically add selections
sfMultiColumn.SelectedItems.Add(orderItem);

Pattern 3: Custom Columns with Manual Definition

<syncfusion:SfMultiColumnDropDownControl
    x:Name="sfMultiColumn"
    ItemsSource="{Binding Orders}"
    DisplayMember="OrderID"
    ValueMember="OrderID"
    AutoGenerateColumns="False">
    <syncfusion:SfMultiColumnDropDownControl.Columns>
        <syncfusion:GridTextColumn MappingName="OrderID" HeaderText="Order ID" Width="100"/>
        <syncfusion:GridTextColumn MappingName="CustomerName" HeaderText="Customer" Width="150"/>
        <syncfusion:GridCurrencyColumn MappingName="Amount" HeaderText="Amount" Width="120"/>
        <syncfusion:GridTextColumn MappingName="Country" Width="100"/>
    </syncfusion:SfMultiColumnDropDownControl.Columns>
</syncfusion:SfMultiColumnDropDownControl>

Pattern 4: Customized Popup Appearance

<syncfusion:SfMultiColumnDropDownControl
    x:Name="sfMultiColumn"
    ItemsSource="{Binding Orders}"
    DisplayMember="CustomerName"
    ValueMember="OrderID"
    PopupHeight="300"
    PopupWidth="500"
    PopupBackground="WhiteSmoke"
    PopupBorderBrush="SteelBlue"
    PopupBorderThickness="2"
    PopupDropDownGridBackground="White"
    IsAutoPopupSize="False"/>

Key Properties

Core Data Properties

  • ItemsSource: Data source for the dropdown (IEnumerable)
  • DisplayMember: Property path displayed in the editor
  • ValueMember: Property path for SelectedValue
  • SelectedItem: Currently selected data object
  • SelectedIndex: Index of selected item (-1 if none)
  • SelectedValue: Value from SelectedItem based on ValueMember
  • SelectedItems: Collection of selected items (multi-select mode)

Filtering & Editing

  • AllowAutoComplete: Enable text auto-completion (default: false)
  • AllowIncrementalFiltering: Filter items based on typed text (default: false)
  • SearchCondition: Filter condition (StartsWith, Contains, Equals)
  • AllowCaseSensitiveFiltering: Case-sensitive filtering (default: false)
  • AllowDiacriticSensitiveFiltering: Diacritic-sensitive filtering (default: true)
  • ReadOnly: Make editor read-only (default: false)
  • AllowNullInput: Allow null values (default: false)
  • SearchText: Current text in editor (read-only)

Column Configuration

  • AutoGenerateColumns: Auto-generate columns from data (default: true)
  • AutoGenerateColumnMode: Column generation mode (Reset, RetainOld, ResetAll, None)
  • Columns: Collection of manually defined columns
  • GridColumnSizer: Column width sizing strategy (Auto, Star, None)

Selection

  • SelectionMode: Single or Multiple selection
  • SeparatorString: Separator for multi-select display (default: ";")
  • TextSelectionOnFocus: Auto-select text on focus (default: false)

Popup

  • IsDropDownOpen: Popup open/closed state
  • PopupHeight/PopupWidth: Popup dimensions
  • PopupMinHeight/PopupMaxHeight: Size constraints
  • PopupMinWidth/PopupMaxWidth: Size constraints
  • IsAutoPopupSize: Auto-size based on grid (default: false)
  • PopupBackground: Popup background brush
  • PopupBorderBrush: Popup border brush
  • PopupBorderThickness: Popup border thickness

Behavior

  • AllowImmediatePopup: Open popup when match found during editing
  • AllowSpinOnMouseWheel: Change selection with mouse wheel (default: true)

Common Use Cases

1. Product Selection with Search

Display product catalog with multiple columns (ID, Name, Category, Price), allow users to search by product name with autocomplete.

2. Customer Lookup

Show customer information in dropdown (Name, Email, Phone, City), filter incrementally as user types, display selected customer name in editor.

3. Multi-Project Assignment

Allow users to select multiple projects from a list showing project code, name, status, and deadline with checkboxes.

4. Invoice Item Selection

Dropdown showing items with columns for item code, description, unit price, and stock level, with filtering by item code or description.

5. Employee Directory

Searchable employee list with columns for name, department, email, and phone number, with autocomplete on employee name.

6. Report Parameter Selection

Display available reports with name, category, and description columns, allow filtering and selection for report generation.

Related Skills

Best Practices

  1. Use ValueMember appropriately: Set ValueMember to a unique identifier property for reliable selection tracking
  2. Enable filtering for large datasets: Use AllowIncrementalFiltering to improve usability with many items
  3. Define columns manually for control: Set AutoGenerateColumns="False" and define columns for predictable layout
  4. Handle SelectionChanged event: Respond to selection changes for dependent UI updates
  5. Set reasonable popup sizes: Configure PopupHeight/PopupWidth or use IsAutoPopupSize for optimal display
  6. Consider performance: For very large datasets (>1000 items), implement virtualization or server-side filtering
  7. Test keyboard navigation: Ensure users can navigate efficiently with keyboard shortcuts
  8. Provide clear DisplayMember: Choose a property that clearly identifies items to users

Troubleshooting

  • Columns not showing: Verify ItemsSource is bound and contains data; check AutoGenerateColumns setting
  • Filtering not working: Ensure AllowIncrementalFiltering="True" and DisplayMember is set correctly
  • Autocomplete not appearing: Set AllowAutoComplete="True" and verify DisplayMember property exists in data
  • Multi-select not visible: Set SelectionMode="Multiple" and check SelectedItems collection
  • Popup not sizing correctly: Adjust PopupHeight/PopupWidth or enable IsAutoPopupSize
  • Performance issues with large data: Consider data virtualization or limit displayed columns

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

39.86%
按下载量换算135

Claude

31.14%
按下载量换算105

Cursor

17.53%
按下载量换算59

Gemini CLI

9.15%
按下载量换算31

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills