您好我已经使用proprierty定义创建了我的自定义控件
我已阅读此页Design Definition advanced以自定义自定义控件的设计。
这是我的代码(这会生成一个包含多行元素的表格,其中有多少元素属于 titololink )
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
<xp:table style="width:100.0px;border-color:rgb(235,235,235);border-style:solid">
<xp:tr>
<xp:td style="background-color:rgb(209,241,248)">
<xp:span
style="font-weight:bold;background-color:rgb(184,228,245)">
</xp:span>
<xp:span style="font-weight:bold">
<%=this.titolo%>
</xp:span>
<xp:span style="border-color:rgb(192,192,192)">
</xp:span>
</xp:td>
</xp:tr>
<%for(i=0;i<this.titololink.length;i++){%>
<xp:tr>
<xp:td><%this.titololink[i]%></xp:td>
</xp:tr>
<%}%>
</xp:table></xp:view>
这些行显示在我的XPages中..但是这段代码this.titololink[i]
每行都是空的,并且没有显示我的proproerties的内容....(我不明白什么是类型)
有人知道吗?
Tnx很多
答案 0 :(得分:4)
您好我找到了解决方案......
<%var a=eval(""+this.titololink+"");%><%=a[i]%>
这段代码非常适合。
奇怪但工作
答案 1 :(得分:2)
我从未试图通过设计定义来获得这种幻想。但是想法很好。
在我上一篇NotesIn9中,我做了一些自定义控件和访问属性的工作 - 即使打开了多个实例。那么可能会有一些有用的信息:http://notesin9.com/index.php/2014/08/10/notesin9-151-bootstrap-progressbars-in-xpages/
我认为该类型将是一个纯数组.. []但我不确定。老实说,我不知道你能用设计定义多么花哨。根据你链接的那个文档..“这个”是复合数据......好的。这很有趣......但我想知道customProperties是否是“this”的方法。所以不是“this.titlolink ......”也许是这个.param.titololink ..不确定..但是我会调查一下。
我最好的建议是使用属性创建一个新的自定义控件“shell”。在该自定义控件中获取所需内容,然后将该XML源粘贴到真实自定义控件的设计定义中。看看是否有效。