Primefaces columnToggler 从复选框列表中删除项目

Primefaces columnToggler remove item from checkbox list

我正在使用 Primefaces columnToggler 在数据 table 中动态 hide/display 列。这按预期工作,但是我想从切换器清单中删除项目,因此用户不能 check/uncheck 它们。

相关代码:

按钮和 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 上为 'locked' 或 'always on' 字段找到一个属性,或者可能在 p:column 上找到一个属性以将其从 columnToggler 清单中删除。不幸的是,我不确定该怎么做,或者是否可能。想法?解决方案?谢谢!

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

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

应该可以解决问题