Добавить поля в новую форму/редактирование с помощью пользовательского определения списка (библиотека документов)

sharepoint.stackexchange https://sharepoint.stackexchange.com/questions/8485

Вопрос

Я использую шаблон «Определение списка" Visual Studio 2010 "для создания нового определения списка для библиотеки документов.

Ничего особенного - я хочу добавить только пару полей в список и представление по умолчанию. Добавление полей в <Fields> в schema.xml и соответствующий <FieldRef> к <Views> Это не проблема, поэтому у меня есть список с моими пользовательскими полями.

Я только не могу заставить их появиться в новых/редактирующих формах. я думал ShowInDisplayForm="TRUE" а также ShowInNewForm="TRUE" Был ли путь, но, похоже, ничего не делает - тогда я понял, что новый шаблон определения списка добавляет его собственный »Upload.aspx, FileDlg.htm, EditDlg.htm".

Я пытался положить <ows:ListProperty Select="MyColumn"> в editdlg.htm. Без изменений. Теперь я видел, что VS2010 ставит много кода в schema.xml под <Form Type="NewFormDialog" Path="EditDlg.htm"> который начинается с <ListFormOpening>.

Мой вопрос: как работать с шаблоном VS, чтобы добавить мои пользовательские поля во все соответствующие диалоги (редактирование/новое/представление)?


Изменить: выяснить, как решить это, удалив <ContentTypes> ссылка из Schema.xml Как описано здесь. Анкет Я до сих пор не понимаю, является ли это правильным способом сделать это, так как теперь я снял тип контента из библиотеки (тогда как я все еще могу добавить документы просто отлично ...). Объяснение кому -нибудь?

Это было полезно?

Решение

«Проблема» заключается в том, что каждый список и библиотека связаны с типом контента. К сожалению, Microsoft ударила, что отключив «разрешить управление типом контента» по умолчанию. Когда вы создаете новое поле, как вы, он добавляется в список, но не связан с типом контента, от списка зависит. Если вы перейдете в настройки списка и включите управление типом контента, вы можете добавить новые «поля списка» в тип контента, и вы увидите их.

Лучший подход к добавлению полей в шаблон списка - это создание собственных полей и добавление их в тип контента. Затем вы создаете шаблон списка на основе этого типа контента (просто с VS) или добавляете этот тип контента в список.

Другие советы

Удаление ссылки ContentTypes не обязательно является правильным, но я уверен, что это неправильный путь. Они там по причине.

У вас есть два варианта. Во -первых, вы можете создать тип контента и указать поля таким образом. Видеть http://msdn.microsoft.com/en-us/library/ff728096.aspx Для получения информации о том, как создать пользовательский список через тип контента.

Во -вторых, вы можете использовать пользовательский тип списка и просто добавить свои собственные поля.

  1. После добавления чистого определения списка в Soluiton через Visual Studio добавьте в любые поля, которые вы хотите в <Fields /> раздел.

  2. Замените ContentTyperef для ID 0x01 (элемент) на новый пустой. Смотрите этот пост в блоге для образца и полного объяснения. http://jopx.blogspot.com/2007/05/sharepoint-2007-how-to-create-custom.html

Лицензировано под: CC-BY-SA с атрибуция
Не связан с sharepoint.stackexchange
scroll top