2

我正在使用 radlistview 从我的远程服务器加载数据,我对 radlistview 中的某些元素使用if 语句

horizontalAlignment="{{ (seller != myemail) ? 'right' : 'left' }}

我遇到的问题是,卖家是从远程服务器加载的,而myemail的值是使用viewModel.set("myemail", "example");. 但这不起作用,似乎只有从服务器加载的数据可以在radlistview中使用。有没有办法我也可以在我的 viewModel 中设置值并在我的 xml 中使用它

这是我的 radlistview 代码

 <lv:RadListView style="height:100%;" row="1" items="{{ dataItems }}" loaded="onListLoaded" loadOnDemandMode="Auto" loadMoreDataRequested="{{ onLoadMoreItemsRequested }}" itemLoading="{{ onItemLoading }}" class="list-group"> 
                            <lv:RadListView.listViewLayout>
                                <lv:ListViewLinearLayout scrollDirection="Vertical" dynamicItemSize="false" itemInsertAnimation="Scale" itemDeleteAnimation="Scale"/>
                            </lv:RadListView.listViewLayout>
                        <lv:RadListView.itemTemplate>
                            <StackLayout>
                            <StackLayout class="message-item" style="width:75%;" horizontalAlignment="{{ (seller != myemail) ? 'right' : 'left' }}">
                                <StackLayout class="message-block" verticalAlignment="top" horizontalAlignment="{{ (seller != sender) ? 'right' : 'left' }}"  borderTopRightRadius="{{ (seller !== sender) ? '0' : '10' }}" borderTopLeftRadius="{{ (seller != sender) ? '10' : '0' }}" style="{{ (seller != sender) ? 'background-color:#b9d4c8' : 'background-color:#cef5e9' }}">
                                    <Label text="{{ (seller != myemail) ? 'You' : sender }}" verticalAlignment="top" class="message-autor"></Label>
                                    <Label text="{{ message }}" textWrap="true" verticalAlignment="top" class="message-body"></Label>
                                </StackLayout>
                            </StackLayout>
                            </StackLayout>
                        </lv:RadListView.itemTemplate>
                    </lv:RadListView>

提前致谢,如果您需要更多信息,请告诉我

4

1 回答 1

1

正如您所发现的,RadListView 中每个项目的绑定内容是相应的数组条目。要引用页面的绑定上下文,您可以使用$parents['Page'].myemail.

于 2020-08-22T19:50:52.287 回答