2016-04-22 43 views
0

Hyの後に初期化しない、私は私のコードでこれを持っているすべて:Primefaces P:scrollPanelはちょうどリフレッシュ

<p:scrollPanel mode="native" style="width:238px;height:400px"> 
    <p:tree value="#{templateController.model.tree}" var="node" style="width:218px" onNodeClick="Utils.SelectFromTreeTable(node);"> 
     <p:treeNode> 
      <h:outputText value="#{node}" style="font-size:12px;"/> 
     </p:treeNode> 
    </p:tree> 
</p:scrollPanel> 

私の問題は、私はAjaxでページをロードし、ページを更新するとき、私はPを考えるです:scrollPanelです初期化されていないのは、ツリーを開くとツリーが大きく、scrollPanelが大きい場合はツリーがscrollPanelから伸びるからです。ページをリフレッシュすると、同じアクションでスクロールバーが表示され、ツリーはp:scrollPanelから伸びませんでした。なぜこれが起こっているのですか?どのようにしてこの問題を解決できますか?

答えて

2

使用<p:panel>あなたの問題は

<p:scrollPanel mode="native" style="width:238px;height:400px"> 
<p:panel style="width:230px;height:380px;overflow:auto !important" 
    <p:tree value="#{templateController.model.tree}" var="node" style="width:218px" onNodeClick="Utils.SelectFromTreeTable(node);"> 
     <p:treeNode> 
      <h:outputText value="#{node}" style="font-size:12px;"/> 
     </p:treeNode> 
    </p:tree> 
</p:panel> 
</p:scrollPanel> 

または<p:scrollPanel>

overflow:autoを追加してみてくださいを解決する必要があります
関連する問題