我正在使用Primefaces columnToggler动态隐藏/显示数据表中的列。这按预期工作,但是我想从切换器清单中删除项目,因此用户无法选中/取消选中它们。

相关代码:

按钮和列

<p:commandButton id="toggler"
                 type="button"
                 value="Columns"
                 title="Show/Hide columns"/>
<p:columnToggler datasource="my_datatable"
                 trigger="toggler" />


数据表

 <p:dataTable value="#{bean.foobars}" var="fb"
              id="my_datatable"> ...


要显示的列(按预期工作)

 <p:column headerText="Data One" >
      <h:outputText value="#{fb.data1}"/>
 </p:column>


要从columnToggler清单中隐藏的列(我该怎么做?)

 <p:column headerText="Always Available" >
      <h:outputText value="#{fb.mustSeeField}"/>
 </p:column>


我希望在p:columnToggler上为“锁定”或“始终在线”字段找到一个属性,或者在p:column上找到一个属性以将其从columnToggler清单中删除。不幸的是,我不确定如何执行此操作,或者是否可行。有什么想法吗?解决方案?谢谢!

最佳答案

PrimeFaces在toggleable上具有p:column属性,如第110页的PrimeFaces 6.1文档所示。

<p:column headerText="Always Available" toggleable="false">
   <h:outputText value="#{fb.mustSeeField}"/>
</p:column>


应该做的把戏

07-26 07:23