Xpages Extlib dataView控件集“;显示:无&引用;列具有空值时的样式

Xpages Extlib dataView控件集“;显示:无&引用;列具有空值时的样式,xpages,lotus-notes,lotus-domino,lotus,xpages-extlib,Xpages,Lotus Notes,Lotus Domino,Lotus,Xpages Extlib,我有一个带有扩展库DataView控件的xpage。我在这里定义了几个额外的列 <xe:dataView id="dataView1" <xe:this.data> <xp:dominoView var="vMyView" /> </xe:this.data> <xe:this.summaryColumn> <xe:viewSummaryColumn colum

我有一个带有扩展库DataView控件的xpage。我在这里定义了几个额外的列

<xe:dataView id="dataView1"         
    <xe:this.data>
        <xp:dominoView var="vMyView" />
    </xe:this.data>

    <xe:this.summaryColumn>
        <xe:viewSummaryColumn columnName="$DateFrom"
            columnTitle="Date From">
        </xe:viewSummaryColumn>
    </xe:this.summaryColumn>

    <xe:this.extraColumns>
        <xe:viewExtraColumn columnName="$DateTo"
            styleClass="hidden-xs" headerStyleClass="hidden-xs" columnTitle="Date To"
            style="hidden-xs">
        </xe:viewExtraColumn>
        <xe:viewExtraColumn columnName="$Information"
            columnTitle="Information">
        </xe:viewExtraColumn>           
    </xe:this.extraColumns>
</xe:dataView>

使用
style=“display:none;”“
呈现空列值:

如果向列定义中添加自定义转换器并用空格替换空值,则可以避免这种情况:


它被渲染到“正常”网格单元,而不显示:无,然后:


只要单元格不可编辑,getAsObject的代码就无关紧要。因此,保持值不变是可以的。

您也可以调整css,而不是使用转换器“伪造”某些内容。实施

.lotusTable TD {
    display: inline !important;
}
在自定义控件中使用的样式表资源中。

因此,您也不必对每个可能为空的列应用转换器。

谢谢您的帮助。我必须将getAsString部分更改为
value==“”?“”:I18n.toString(值,“yyyy-MM-dd”)
,因为我在列中使用日期。此表不使用.lotusTable类呈现。我已经更改了css以跟随您的类条目,但是表被视为没有表格单元格的文本。很糟糕,我假设您将使用OneUI(oneuiv2.1-default)主题-这已经基本上使用内置类格式化了所有内容,因此“寻址”单个元素很容易。但是只要检查HTML,我相信您会找到一个模式,并可以相应地修改css选择器-或者通过其styleClass属性为您的外列指定自己的类名。