2013-04-24 79 views
0

我有一个bandBox使用ZK 5.0.8(MVC方法)里面是一个列表框,显示记录后来我过滤结果onChanging在bandBox eventListener [事件],但有时pageSize和分页是不同步的列表框的结果有时不就行了(0匹配)的仍呈现ZK Bandbox Listbox autoPaging问题与过滤

1/ 13[ 1 - 4/51] 

这是为什么?记录有人可以给我一个提示。这里是我的相关代码

<bandbox id="bandforcode" autodrop="true" width="270px">  
<listbox id="listBoxForCode" height="250px" width="300px" mold="paging" autopaging="true"> 
public void setListBoxForBandBoxFromDB(Listbox box,String ref)//Filtering 
{  
    final ArrayList<Student>students = new ArrayList<Student>(manager.getListForStudentsByRefBandBox(ref));  
    box.getItems().removeAll(box.getItems());  
    BindingListModelList model = new BindingListModelList(students,false); 
    box.setModel(model); 
} 
box.addEventListener("onChanging",new EventListener()//Listener 
{ 
    public void onEvent(Event event) throws Exception 
    {      
    final Bandbox band = (Bandbox)event.getTarget(); 
    final org.zkoss.zk.ui.event.InputEvent inputEvent=(org.zkoss.zk.ui.event.InputEvent)event;    
    final String initialText = inputEvent.getValue();         

setListBoxForBandBoxFromDB((Listbox)band.getFirstChild().getFirstChild(),initialText);       
    } 
});   

请看看下面的图片。

Screenshot

+0

对不起,但这不是所有相关的代码。 请。发布属于过滤进程的每种方法。 – 2013-04-25 07:20:17

回答

0

我天衣的问题可能是这个

box.getItems().removeAll(box.getItems()); 

使用Model时,不应编辑Items

将其更改为

box.getModel().clear(); 

或只是DELET行,因为你设置一个新的模式呢。

+0

是否有帮助/工作? – 2013-04-30 16:15:27