开发者论坛

 找回密码
 注册 (请使用非IE浏览器)
查看: 3009|回复: 0

[Winforms使用技巧教程]查找编辑器-自动搜索模式

[复制链接]

0

精华

8

贡献

1768

赞扬

特约版主

帖子
583
软币
4524
在线时间
275 小时
注册时间
2019-2-21
发表于 2020-1-3 10:46:52 | 显示全部楼层 |阅读模式

下载DevExpress v19.2完整版    DevExpress v19.2汉化资源获取

DevExpress Winforms Controls 内置140多个UI控件和库,完美构建流畅、美观且易于使用的应用程序。在前面的教程文章中,技术团队宣传了针对DevExpress LookUpEdit和GridLookUpEdit控件新的AutoSuggest模式。 简而言之,AutoSuggest允许编辑器执行自定义任务来检索下拉菜单项(因此编辑器具有虚拟数据源,每次用户在查找文本框中输入值时,虚拟数据源都会更改)。大多数人将这个新功能用于空的、未绑定的编辑器。如果您的查找编辑器绑定到静态数据源,则源记录将仅在一种使用情况下显示:当文本框为空并且用户按下下拉按钮时。

到目前为止,如果您希望用户搜索查找记录,则不得不使用earchLookUpEdit。 该编辑器满足了业务需求,但缺少当今用户对高级桌面应用程序所期望的一些现代功能。SearchLookUpEdit带有”locked”文本框,该文本框不允许用户通过键盘输入文本值,该文本框不允许用户通过键盘输入文本值。为了找到记录,它激活了一个下拉面板,并允许用户在其嵌入式查找面板中输入搜索条件。

使用v19.2,您能够将LookUpEdit \ GridLookUpEdit编辑器绑定到数据源,将Properties.SearchMode更改为AutoSearch和voila:使用户能够在编辑器的文本框中输入搜索值——匹配的记录将自动显示在查找的下拉菜单中。

每当实施一项新功能时,技术团队都会竭尽所能将核心功能扩展到多个产品中。例如,这项新的自动搜索功能将接受Find Panel所使用的相同语法。

就像AutoSuggest一样,当用户输入文本值时,AutoSearch会触发自己的事件(AutoSearch事件)。 尽管您不需要处理事件(一切都可以直接使用),但已为您提供了在需要时进行处理的功能。例如您可以在事件处理程序中使用e.SetParameters方法来微调搜索结果,此方法接受两个参数,这些参数类似于WinForms数据感知控件中显示的Find Panels所使用的ParserKind和Condition属性:

[C#] 纯文本查看 复制代码
using DevExpress.Data.Filtering;

private void LookUpEdit1_AutoSearch(object sender, LookUpEditAutoSearchEventArgs e)
{
e.SetParameters(FindPanelParserKind.And, FilterCondition.StartsWith);
}

由于AutoSuggest和AutoSearch事件的参数均来自同一基类,因此适用自定义突出显示API,下面的示例说明了如何在与文本框中输入的值匹配时突出显示整个数据字段值。

[C#] 纯文本查看 复制代码
private void LookUpEdit1_AutoSearch(object sender, LookUpEditAutoSearchEventArgs e)
{
e.SetParameters(FindPanelParserKind.And, FilterCondition.StartsWith);
e.SetHighlightRanges(CustomHightlight(e.Text));
}

static Func<string, string, DisplayTextHighlightRange[]> CustomHightlight(string userText)
{
return (displayText, fieldName) =>
{
if (fieldName == "ShipCity" || fieldName == "ShipCountry")
{
if (displayText.StartsWith(userText))
return new DisplayTextHighlightRange[] {
new DisplayTextHighlightRange(0, displayText.Length) };
}
return null;
};
}

DevExpress v19.2全新发布,欢迎下载最新版体验哦~

DevExpress中文网官网QQ群:540330292      欢迎一起进群讨论


回复

使用道具 举报

Archiver|手机版|小黑屋|开发者网 ( 苏ICP备08004430号-2 )
版权所有:南京韵文教育信息咨询有限公司

GMT+8, 2024-5-18 07:39

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表