Как получить доступ к свойству значения в viewCategoryColumn

Я использую элемент управления DataView из библиотеки расширений в своем мобильном приложении. Столбец категории содержит значение из категоризированного представления, а также отображает статус документа. (значения 0 и 1) Я хотел бы перевести значения в элементе управления DataView в зависимости от языка, выбранного пользователем. Поэтому мне нужно построить ключ из этого значения, чтобы вернуть значение из файла языковых ресурсов.

свойство value элемента управления содержит текущее значение. Но как мне получить доступ к этому значению?

Я бы хотел сделать что-то подобное

if (this.Value.equals("0")) {
   return lbls["status.not.activated"];
} else {
   return lbls["status.activated"];
}

person Ulrich Krause    schedule 13.04.2014    source источник


Ответы (1)


Не видя никакого кода, я могу только догадываться, что вы могли привязать элемент управления DataView к обычному источнику данных DominoView. Кроме того, я предполагаю, что с помощью «value» вы имеете в виду свойство value дочернего элемента управления «viewCategoryColumn» DataView.

Одна вещь, которую я вижу из вашего фрагмента кода, заключается в том, что вы пишете свойство «Value» с заглавной буквы «V», что может быть здесь опечаткой, но если это так в вашем фактическом коде, тогда это должно быть неправильно.

Кроме того, я просто попробовал это в очень простом тестовом сценарии, где моим источником данных является представление, использующее поля формы в качестве столбца категории. На мой взгляд, использование следующего кода также должно стать решением вашей задачи:

<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>

Надеюсь это поможет

person Lothar Mueller    schedule 13.04.2014
comment
Спасибо, я уверен, я уже так устал раньше. В любом случае ваше решение работает ‹xe: this.categoryColumn› ‹xe: viewCategoryColumn contentType = text› ‹xe: this.columnName› ‹! [CDATA [# {javascript: dd.activated}]]› ‹/xe:this.columnName ›‹ Xe: this.value ›‹! [CDATA [# {javascript: return applLang [view.column.state.active. + viewEntry.getColumnValues ​​() [1]]}]] ›‹ / xe: this.value ›‹ / xe: viewCategoryColumn ›‹ /xe:this.categoryColumn › - person Ulrich Krause; 13.04.2014