Sitecore 8 - 使用搜索控制器扩展多列表

Sitecore 8 - Extend the Multilist with Search controller

'Multilist with Search' 控制器有两个问题。

  1. 我们如何更改显示字段? 目前它显示如下所示。 136330 (City item - Cities) 我们要显示Display name + Language

可能吗?

  1. 我们有 4 种不同的语言,所以我们也需要按语言进行过滤。我们发现一些资源表明我们可以通过实施 Sitecore.Buckets.FieldTypes.BucketList 来覆盖它,但我们无法为这些问题找到合适的解决方案。

我们已经尝试了下面的 link 但它只适用于负载,但当我们搜索一个值时,结果如第 1 点所述。

How to get a Multilist with Search field to not display referenced items' version and language?

在等待好的答案吗?

找到答案并为 1 重写 OutputString 方法,如下所示。

public 覆盖字符串 OutputString(Item item) { return string.Format("{0} - {1}", (object)item.DisplayName,item.Fields["Postal code"].ToString()); }

对于 2,在 DoRender 方法中使用了以下代码。

使用(新语言切换器(Sitecore.Context.Language)) 来源 = LookupSources.GetItems(当前,this.Source);