我想在使用sap.m.MultiComboBox
时添加additionalText
属性。我的观点如下:
<MultiComboBox items="{/list}" width="17rem" >
<core:ListItem key="{Name}" text="{Name}" additionalText="{Price}" />
</MultiComboBox>
但这似乎不起作用,因为ListItem不是MultiComboBox的聚合。
答案 0 :(得分:1)
将文本属性连接起来吗?由于您似乎无法定义真正的附加文本,因此解决方法应该是这样的:
<MultiComboBox items="{/list}" width="17rem" >
<core:Item key="{Name}" text="{Name}: {Price}" />
</MultiComboBox>
答案 1 :(得分:1)
控件sap.m.MultiComboBox
现在支持 [1] 属性showSecondaryValues
,它应与additionalText
中的<core:ListItem>
一起使用。< / p>
<MultiComboBox
showSecondaryValues="true"
items="{/ProductCollection}"
>
<core:ListItem
key="{ProductId}"
text="{Name}"
additionalText="{ProductId}"
/>
</MultiComboBox>
演示: https://ui5.sap.com/#/entity/sap.m.MultiComboBox/sample/sap.m.sample.MultiComboBoxTwoColumnsLayout
问题是控件 Multi Combo Box 不是为了在列表中显示多个属性而设计的。根据{{3}}:
如果需要显示多个组合框,请不要使用多组合框 属性。
我不建议投入太多时间来解决这个限制,使应用程序更容易出错且难以维护。相反,请使用Fiori Design Guideline之类的替代控件,并使用选项multiSelect: true
。它的聚合接受从Select Dialog扩展的任何项目,您可以在其中放置任何想要向用户提供更多信息的内容。
PS:除了选择对话框之外,该指南还提到了List Item Base作为替代方案。但它目前是闭源的(在OpenUI5中不可用)和IMO,绝对是一种替代简单的 Multi Combo Box 用例的过度杀伤。
答案 2 :(得分:0)
<ComboBox
showSecondaryValues= "true"
items="{
path: '/ProductCollection',
sorter: { path: 'Name' }
}">
<core:ListItem key="{ProductId}" text="{Name}" additionalText = {CurrencyCode}"/>