WPF中,combobox实现下拉框多选并且附带搜索功能
时间: 2023-09-03 14:13:30 浏览: 383
combobox 下拉多选框带搜索功能
在WPF中,要实现下拉框多选并且附带搜索功能,可以使用自定义控件或者第三方控件库。其中,第三方控件库中的“MultiSelectComboBox”控件就可以实现这个功能。
使用步骤如下:
1.在项目中添加第三方控件库,并引用控件库中的dll文件。
2.在XAML中添加控件,并设置样式和属性。
示例代码如下:
```xml
<Window x:Class="WpfApp.MultiSelectComboBoxWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WpfApp"
xmlns:custom="clr-namespace:WpfCustomControlLibrary;assembly=WpfCustomControlLibrary"
Title="MultiSelectComboBoxWindow" Height="350" Width="525">
<Window.Resources>
<Style TargetType="custom:MultiSelectComboBox">
<Setter Property="Width" Value="200"/>
<Setter Property="Height" Value="30"/>
</Style>
</Window.Resources>
<Grid>
<custom:MultiSelectComboBox x:Name="multiSelectComboBox" ItemsSource="{Binding Items}" DisplayMemberPath="Name" />
</Grid>
</Window>
```
3.在ViewModel中添加Items属性,并初始化数据源。
示例代码如下:
```csharp
public class MultiSelectComboBoxViewModel
{
public ObservableCollection<Item> Items { get; set; }
public MultiSelectComboBoxViewModel()
{
Items = new ObservableCollection<Item>
{
new Item{ Id=1, Name="Item1"},
new Item{ Id=2, Name="Item2"},
new Item{ Id=3, Name="Item3"},
new Item{ Id=4, Name="Item4"},
new Item{ Id=5, Name="Item5"},
};
}
}
public class Item
{
public int Id { get; set; }
public string Name { get; set; }
}
```
这样就可以实现下拉框多选并且附带搜索功能了。
阅读全文