Primefaces p:treeNode 背景色
Primefaces p:treeNode background colour
我有一个包含 primefaces p:tree
元素的边栏。在这里:
<p:tree value="#{sidebarSelectionView.systemRoot}"
var="treeNodeDescriptor"
selectionMode="single"
selection="#{sidebarSelectionView.selectedNode}">
<p:ajax event="select" update=":unitContentId" />
<p:treeNode expandedIcon="ui-icon-folder-open" collapsedIcon="ui-icon-folder-collapsed">
<h:outputText value="#{treeNodeDescriptor.name}"/>
</p:treeNode>
</p:tree>
树节点由许多嵌套节点组成。每个叶节点都与一个内容页面相关联,如果选择该节点,则会显示该内容页面。
生成的树是这样的:
Agent
customer1
subcustomer1
subcustomer2
如果与 subcustomer1
关联的内容页面更改其内部状态,我如何使节点 Agent, customer1
和 subcustomer1
具有红色背景颜色?内部状态由 <p:poll>
.
检查
一种选择是在轮询时将页面状态存储在支持 bean 中,例如在节点数据状态图中。只需使用您的权利 classes.
public class SidebarSelectionView {
private Map<[NodedataClass], [StateClass]> nodedataStateMap;
...
}
有了它,您就可以使用
来设置节点的样式
<h:outputText
value="#{treeNodeDescriptor.name}"
style="background-color: ##{sidebarSelectionView.nodedataStateMap[treeNodeDescriptor].stateName eq 'bad' ? 'FF0000' : '00FF00'};"
/>
或使用自定义样式 classes with
<h:outputText
value="#{treeNodeDescriptor.name}"
styleClass="#{sidebarSelectionView.nodedataStateMap[treeNodeDescriptor].stateName eq 'bad' ? 'stateBad' : 'stateGood'}"
/>
示例假设 StateClass 具有 stateName 属性 类型 String .适应你的状态就好了class。我希望你明白了。
别忘了用
更新你的树
<p:poll update="treeId" />
反映状态变化。
我有一个包含 primefaces p:tree
元素的边栏。在这里:
<p:tree value="#{sidebarSelectionView.systemRoot}"
var="treeNodeDescriptor"
selectionMode="single"
selection="#{sidebarSelectionView.selectedNode}">
<p:ajax event="select" update=":unitContentId" />
<p:treeNode expandedIcon="ui-icon-folder-open" collapsedIcon="ui-icon-folder-collapsed">
<h:outputText value="#{treeNodeDescriptor.name}"/>
</p:treeNode>
</p:tree>
树节点由许多嵌套节点组成。每个叶节点都与一个内容页面相关联,如果选择该节点,则会显示该内容页面。
生成的树是这样的:
Agent
customer1
subcustomer1
subcustomer2
如果与 subcustomer1
关联的内容页面更改其内部状态,我如何使节点 Agent, customer1
和 subcustomer1
具有红色背景颜色?内部状态由 <p:poll>
.
一种选择是在轮询时将页面状态存储在支持 bean 中,例如在节点数据状态图中。只需使用您的权利 classes.
public class SidebarSelectionView {
private Map<[NodedataClass], [StateClass]> nodedataStateMap;
...
}
有了它,您就可以使用
来设置节点的样式<h:outputText
value="#{treeNodeDescriptor.name}"
style="background-color: ##{sidebarSelectionView.nodedataStateMap[treeNodeDescriptor].stateName eq 'bad' ? 'FF0000' : '00FF00'};"
/>
或使用自定义样式 classes with
<h:outputText
value="#{treeNodeDescriptor.name}"
styleClass="#{sidebarSelectionView.nodedataStateMap[treeNodeDescriptor].stateName eq 'bad' ? 'stateBad' : 'stateGood'}"
/>
示例假设 StateClass 具有 stateName 属性 类型 String .适应你的状态就好了class。我希望你明白了。
别忘了用
更新你的树<p:poll update="treeId" />
反映状态变化。