原文同步至: http://www.waylau.com/flex-4-6-xml-search-sample-matches/
效果见图
初始化界面
输入“设置”,进行搜索、匹配后界面
下面是代码
;
[Bindable]
public var rawListShow:XML = null; //搜索过滤后的数据
protected function init(event:FlexEvent):void
{
getData();
}
protected function textinput1_changeHandler(event:TextOperationEvent):void
{
getData();
}
//初始化数据
private function getData():void{
if(StringUtil.trim(textInput.text) == ""){
rawListShow = rawList ;
}else{
createNewXml(textInput.text,rawList);
}
/* 打开或关闭指定项目下的所有树项目。如果设置 dataProvider 之后立即调用 expandChildrenOf(),
则您可能看不到正确的行为。您应该等待对组件进行验证或调用 validateNow() 方法 */
tree1.validateNow();
expandtree();
}
//搜索过滤后,生产新的xml
private function createNewXml(searchString:String, xml:XML):void{
rawListShow =;
for(var i:int = 0; i-1){
return true;
}else{
return false;
}
}
//展开树
private function expandtree():void {
for each(var item:XML in this.tree1.dataProvider)
this.tree1.expandChildrenOf(item,true);
}
]]>