最近使用WPF做了一个地区选择控件,可以提供省、市、地区、县等名称的快速录入。查询使用的是Lucene组件(主要是想体验一下牛刀杀鸡)
功能列表:
- 支持汉字、全拼、简拼的快速搜索
- 支持光标键和鼠标滚轮键的定位、换页
- 支持多音字过滤。例如:查找重庆时只需输入“cq”,而输入“zq”是查找不到的
- 文本框的右角会有当前页数和总页数的提示
属性列表:
- Text:获取或设置文本框的文本内容,默认值为空字符串 ("")
- PageSize:地区建议的最大数量,默认为10
- ShowProvince:是否展示所在省份
- Area:当前选择的地区信息,包括所在省份、地区名称、地区编码
- Background:获取或设置文本框背景的画笔
事件:
- LostFocus:在文本框失去逻辑焦点时发生
使用方法:
- 下载组件:包括AreaSuggest.dll、Lucene.Net.dll、AreaIndex文件夹
- 在项目中添加AreaSuggest.dll的引用
- XAML代码
-
<Window x:Class="WpfApplication1.Window1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:sanco="clr-namespace:AreaSuggest;assembly=AreaSuggest" Title="Window1" Height="335" Width="344"> <Grid> <sanco:SuggestCTR Panel.ZIndex="1000" Name="suggestCTR" Margin="25,12,0,0" HorizontalAlignment="Left" Width="200" VerticalAlignment="Top"></sanco:SuggestCTR> </Grid> </Window>
-
按F5,走你☞