我在移动应用程序中使用扩展库中的DataView控件。 category列包含分类视图中的值,也显示文档的状态。 (值为0和1) 我想根据用户选择的语言翻译DataView控件中的值。所以我需要从这个值构建密钥以从我的语言资源文件中返回值。
控件的value属性包含当前值。 但是我如何获取此值?
我愿意做这样的事情
if (this.Value.equals("0")) {
return lbls["status.not.activated"];
} else {
return lbls["status.activated"];
}
答案 0 :(得分:1)
如果没有看到任何代码,我只能猜测您可能已将DataView控件绑定到普通的DominoView数据源。并且我认为,对于“value”,您指的是DataView的“viewCategoryColumn”子控件的value属性。
我从你的代码片段中看到的一件事是,你拼写的“Value”属性的大写字母为“V”,这可能是一个拼写错误,但如果它在你的实际代码中就是这样,那么这一定是错误的。< / p>
除此之外,我在一个非常简单的测试场景中尝试了这一点,其中我的数据源是一个视图,使用表单字段作为类别列。在我看来,使用如下代码也应该是您的任务的解决方案:
<xe:this.categoryColumn>
<xe:viewCategoryColumn
columnName="Form"
columnTitle="Form">
<xe:this.value><![CDATA[#{javascript:
if(@LowerCase(viewEntry.getColumnValues()[0])=="testform"){
return "Standard Form";
}else{
return "Other Form";
}}]]></xe:this.value>
</xe:viewCategoryColumn>
</xe:this.categoryColumn>
viewEntry
变量已被定义为dataView本身的核心属性,因为我们使用许多viewPanel,重复等,从而产生NotesXspViewEntry
类型的对象:
<xe:dataView
id="dataView1"
columnTitles="true"
var="viewEntry">
...
</xe:dataView>
希望这有帮助