как применить специальное действие в ЕЦБ только для элемента документа

StackOverflow https://stackoverflow.com/questions/560347

Вопрос

Я добавил пункт меню в блок управления редактированием (ECB) в библиотеке документов (используя следующую статью msdn http://msdn.microsoft.com/en-us/library/ms473643.aspx)

Теперь я обнаружил, что настраиваемое действие (пункт меню) в ECB отображается как для элемента документа, так и для папки документа.Итак, как применить специальное действие только к элементу документа?

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

Решение

Используете ли вы список в качестве типа регистрации?

Попробуйте использовать ContentType в качестве типа регистрации и укажите идентификатор типа содержимого документа (я думаю, это 0x0101) в своем RegistrationID.

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

Вам нужно будет создать класс, который наследуется от WebControl.Этот класс должен будет отобразить ваш пункт меню так, как вы хотите, чтобы он отображался.

Затем вам нужно будет использовать параметры ControlAssembly и ControlClass из определения CustomAction, чтобы указать этот класс.

Вашему классу необходимо будет определить, является ли текущий элемент документом или папкой, и отобразить/не отобразить себя соответствующим образом.

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

Это хорошая публикация в блоге о технике, Это не для ЕЦБ, но принципы те же.

Наслаждаться!

В вашем customAction используйте RegistrationType="FileType" для определения ФАЙЛА и используйте RegistrationId="doc" для определения расширения, в моем примере используется текстовый документ.;-)

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