На курсе у слушателя возникла идея при создании папок в списке или других элементов вместо ввода названия выбирать название из списка возможных значений.

Стали думать о возможной реализации.

Вариант 1 – поменять тип поля. К сожалению, тип поля Название (Title) ни в одном списке поменять нельзя. Но можно поменять этот тип в других полях. Это можно сделать через пользовательский интерфейс и PowerShell таким образом:

$w = Get-SPWeb http://portal

$l = $w.Lists["test list"]

$f = $l.Fields["field title"]

$f.SchemaXml = $f.SchemaXml.Replace("Type=""Text""", "Type=""Choice""")

$f.Update()

 

Вариант 2 – скрыть поле из формы, добавить другое поле для выбора значений и сделать обработчик на изменение данных, который будет копировать значение. Гарантированно работает.

Вариант 3 – переделать форму списка, заменив элемент управления с текстового поля на выпадающий список. Можно реализовать через замену RenderingTemplate для типа контента. Попробую сделать и напишу отдельно о результатах.