Wen*_*Hao 1 sitecore sitecore6
如何在内容编辑器中启用多列表控件?例如,我有一个项目列表,项目1到项目10.在标准模板值中,我定义了item1,2,3.部署解决方案后,如何在内容编辑器模式或页面编辑器模式下启用用户以选择item7,8,9和10?
而且,在我测试/渲染多列表之后,只渲染RAW VALUES,是否有可能渲染项目名称,例如item1?我是否需要自定义多列表?
多列表控件应该在内容编辑器中直接对用户可见,您不需要执行任何其他操作.由于您使用标准值定义了某些项目,因此在首次创建该项目时将对其进行"预先选择".然后,用户可以根据需要添加其他项目.
要允许用户从页面编辑器中选择值,您可以在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
// ...
}
}
Run Code Online (Sandbox Code Playgroud)
您可以使用以下内容代替转发器的数据源
Sitecore.Data.Fields.MultilistField multilistField = Sitecore.Context.Item.Fields["myMultilistField"];
Sitecore.Data.Items.Item[] items = multilistField.GetItems();
Run Code Online (Sandbox Code Playgroud)