1

如何在内容编辑器中启用多列表控制?例如,我有一个项目列表,从 item1 到 item10。在标准模板值中,我定义了 item1,2,3。部署解决方案后,如何让内容编辑器模式或页面编辑器模式的用户选择 item7、8、9 和 10?

而且,在我测试/渲染了多列表之后,只渲染了 RAW VALUES,是否有可能渲染项目名称,例如 item1?我需要自定义多列表吗?

4

1 回答 1

5

多列表控件应在内容编辑器中对用户直接可见,您无需执行任何其他操作。由于您在标准值中定义了一些项目,因此在首次创建该项目时将“预先选择”这些项目。然后,用户可以根据需要添加附加项目。

要允许用户从页面编辑器中选择值,您可以在 PageEdit 中使用 Sitecore EditFrame

该项目被呈现为原始值的原因是因为您需要获取该项目,然后迭代目标 ID。这里有一个例子

//Get a multilist field from the current item
Sitecore.Data.Fields.MultilistField multilistField = Sitecore.Context.Item.Fields["myMultilistField"];
if (multilistField != null)
{
  //Iterate over all the selected items by using the property TargetIDs
  foreach (ID id in multilistField.TargetIDs)
  {
    Item targetItem = Sitecore.Context.Database.Items[id];
    litItemTitle = targetItem.DisplayName;
    // Do something with the target items
    // ...
  }
}

您可以将以下内容用于转发器的数据源

Sitecore.Data.Fields.MultilistField multilistField = Sitecore.Context.Item.Fields["myMultilistField"];
Sitecore.Data.Items.Item[] items = multilistField.GetItems();
于 2013-02-04T16:09:31.460 回答