Flex自动过滤ComboBox,在网上找了几篇感觉BUG比较多,就自己写了一个。直接上代码,附件中是源码。
package com.ctsi.components
{
import flash.events.Event;
import mx.collections.ArrayCollection;
import mx.controls.ComboBox;
import mx.controls.TextInput;
import mx.utils.StringUtil;
public class FilterComboBox extends ComboBox
{
private var fullData:ArrayCollection;
public function FilterComboBox() {
addEventListener("creationComplete", init);
}
private function init(event:Event) : void {
fullData = dataProvider as ArrayCollection;
}
override protected function textInput_changeHandler(event:Event) : void {
var data:ArrayCollection;
var keyWord:String;
super.textInput_changeHandler(event);
if (fullData){
keyWord = StringUtil.trim(textInput.text);
if (keyWord == "" || keyWord == null)
data = fullData;
else
data = filterData(keyWord);
dataProvider = data;
dropdown.selectedIndex = -1;
dropdown.verticalScrollPosition = 0;
textInput.text = keyWord;
TextInput(textInput).setSelection(keyWord.length, keyWord.length);
open();
}
}
private function filterData(keyWord:String) : ArrayCollection {
var data:ArrayCollection;
var item:Object;
var i:int;
var value:String;
data = new ArrayCollection();
for (i = 0; i < fullData.length; i++) {
item = fullData.getItemAt(i);
if (item.hasOwnProperty(labelField)) {
value = item[labelField];
if (value.indexOf(keyWord) != -1) {
data.addItem(item);
}
}
}
return data;
}
}
}
分享到:
相关推荐
在Flex编程领域,ComboBox是一个常用的组件,它提供了一个下拉列表供用户选择,通常用于实现单选功能。然而,有时我们需要在ComboBox中嵌入多选功能,这时可以通过添加Checkbox来实现。本文将深入探讨如何在Flex中的...
在本实例中,我们将深入探讨如何利用Flex 4实现Combobox的输入过滤功能,这将帮助用户在大量数据中快速定位所需选项。 1. **Combobox基础** Flex中的Combobox由两部分组成:一个可编辑的文本输入字段和一个下拉...
总结,Flex中实现DataGrid内ComboBox的联动需要掌握事件监听、数据绑定、自定义组件等技术。通过以上步骤,我们可以创建出交互性强、用户体验良好的数据输入界面。在实际开发中,还需要考虑到性能优化,避免不必要的...
2. **输入自动过滤**:实现输入自动过滤,我们可以订阅ComboBox的TextChanged事件。当用户在输入框中输入字符时,触发此事件。然后,遍历ComboBox的所有项,检查每一项的各个列是否以输入的字符开头。如果找到匹配的...
在Flex编程中,ComboBox是一个常用的组件,用于提供下拉列表让用户选择。这个“flex ComboBox checkbox”的主题涉及到在ComboBox中集成复选框(checkbox)的功能,这使得用户可以选择多个选项,而不仅仅是单选。下面...
flex4中不能使用combobox,该类是用LIST 自写的一个代替类
在ComboBox中实现此功能,我们需要监听用户输入事件,然后根据当前输入的文本动态过滤列表项。 二、C#实现步骤 1. 首先,确保你的项目引用了System.Windows.Forms命名空间,这是包含ComboBox控件的基础库。 ```...
在博客文章《Flex下拉框为Tree的ComboBox》中,作者cym_lmy提供了源码和截图,详细解释了实现过程。通过阅读源码,我们可以了解到如何设置Tree的dataProvider,如何处理选择事件,以及如何在ComboBox与Tree之间同步...
在“flex combobox联动demo”中,我们可以推测这个项目展示了如何通过ActionScript或MXML来实现Combobox之间的这种交互。下面将详细介绍可能涉及的技术点: 1. **Combobox组件**:Flex SDK提供了Combobox组件,它是...
C#中实现combobox的自动完成功能
总的来说,实现C# ComboBox的自动补全涉及到数据绑定、事件监听、数据过滤和优化,以及在ASP.NET环境下的Ajax处理。通过不断实践和积累,你可以创建出高效、灵活且用户体验良好的自动补全功能。这正是软件项目实施...
总结来说,Flex Tree形ComboBox组件是实现层级数据选择的强大工具,通过灵活的数据绑定、自定义渲染和事件处理,可以创建出高度定制化的交互式界面。在实际开发中,了解并掌握这些知识点将有助于构建更高效、更友好...
C#WinForm的ComboBox控件自定义实现自动模糊匹配查找数据的方法 与控件自带的AutoCompleteMode类似,完美实现模糊匹配,解决AutoCompleteMode只能从左向右匹配的问题
在Flex4中,ComboBox组件提供了丰富的定制选项,如设置数据源、选择项模板、启用过滤等功能。数据源可以是数组、XML列表或其他数据结构,用户可以通过选择项模板自定义列表中每个项目的外观。此外,ComboBox还支持...
在Flex开发中,DataGrid是一种常用的组件,用于展示表格数据,而Combobox列则可以提供下拉选择功能,增强用户交互。然而,在实际应用中,我们可能会遇到一些问题,比如在DataGrid中嵌入Combobox列,并且允许用户拖动...
这就是“Flex文本框数据过滤”的基本实现。你可以根据实际需求调整过滤逻辑,例如添加缓存机制、优化性能,或者提供更复杂的过滤条件。此外,还可以通过样式表或CSS自定义组件的外观,使其更好地融入你的应用程序...
输入拼音首字母过滤选项的combobox,同时根据汉字生成拼音和拼音首字母,使用的是微软的Microsoft.International.Converters.PinYinConverter,对于有些多音字不正确的,可以在里面增加一个xml字典进行过滤
总之,EXTJS的Combobox组件结合适当的配置和事件监听,可以轻松实现自动补全功能,无论是本地数据还是远程数据源,都能提供高效且友好的用户体验。在实际开发中,你可以根据项目需求灵活运用这些特性,提高应用的...