3

遇到一个怪事,让我陷入了困境。似乎“values”和“get”是compositeData的属性和方法,不知道是否有“set”?

我向自定义控件添加了三个属性定义:'header' & 'menuEntries'(w\ 允许多次检查)& 'values'(w\ 允许多次检查)

我在包含自定义控件的 XPage 的“属性定义”选项卡中为“标题”和“菜单条目”和“值”添加了多个条目:

header = "aaa"   
menuEntries = "Main", "File", "Help"     
values = "z", "s"

在自定义控件中,我通过使用“compositeData.header”将标题放入计算文本中引用了自定义控件中的属性定义,并且这些值在重复控件的交互数据绑定中被引用为复合数据.values。

当显示 XPage 时,标题的计算文本的位置显示“This is the Header”就好了;但是,在重复控件显示其内容的地方,数据显示的不是三个“主要”和“文件”和“帮助”,而是只有两个自定义属性的名称,即标题和值。

为了在compositeData.values 中获得真实的数据项,
我必须使用compositeData.get("values")。这是自定义控件的属性定义和正文。将 CC 添加到 XPage 并给自定义属性一些值,看看你是否看到我做了什么,,,,

在此处输入图像描述

自定义控件定义

在此处输入图像描述

XPages 自定义属性

<xp:panel style="border-color:blue solid thin;">
<xp:text id="cf3" value="#{javascript:compositeData.header}"></xp:text>
     <br /><br />
<xp:repeat id="repeat1" rows="30" var="item" indexVar="itemIndex"
  value="#{javascript:compositeData.menuEntries}">
    <xp:text id="cf2" value="#{javascript:item}"></xp:text>&#160;
</xp:repeat>
     <br />
<xp:repeat id="repeat2" rows="30" var="item" indexVar="itemIndex"
   value="#{javascript:compositeData.values}">
     <xp:text id="computedField5" value="#{javascript:item}"></xp:text>&#160;
</xp:repeat>
   <br />
<xp:text id="cf4" value="#{javascript:compositeData.values}"></xp:text>
<xp:text id="cf5"><br /><br />
     <xp:this.value><![CDATA[#{javascript:compositeData.get("values")}]]></xp:this.value>

结果

在此处输入图像描述

4

1 回答 1

3

CompositeDatacom.ibm.xsp.binding.PropertyMap的一个实例。

您可以在此处找到完整的文档:http ://public.dhe.ibm.com/software/dw/lotus/Domino-Designer/JavaDocs/DesignerAPIs/com/ibm/xsp/binding/PropertyMap.html

于 2013-10-11T08:35:48.420 回答