#outlook
#outlook
Вопрос:
Я создал пользовательскую группу с кнопкой переключения на встроенной вкладке «Назначение вкладки», где нажатие на кнопку откроет новую winform.
Только после продолжения работы с этой формой на экране назначения должна быть включена кнопка «Сохранить и закрыть».
Но я не могу отключить встроенные элементы управления, я попытался, как показано ниже
<?xml version="1.0" encoding="UTF-8"?>
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad="Ribbon_Load">
<ribbon>
<tabs>
<tab idMso="TabAppointment">
<group idMso ="GroupActions">
<button idMso="SaveAndClose" getEnabled="GetEnabled"/>
</group>
<group id="GroupRBS" insertBeforeMso="GroupActions" label="RBS">
<toggleButton id="btnBookRoom" label ="Add Room" supertip ="Room booking option for an appointment" imageMso="AddRoom" onAction="CallRBS" size="large" getEnabled="GetEnabled" />
</group>
</tab>
</tabs>
</ribbon>
</customUI>
Я создал метод обратного вызова ‘getEnabled’ в классе ribbon, но он запускается только для пользовательских групповых элементов управления, не можем ли мы переопределить атрибуты встроенного элемента управления?
Я могу скрывать встроенные группы, но не могу скрыть конкретный встроенный элемент управления внутри встроенной группы, есть ли какой-либо способ сделать это?
Пожалуйста, помогите мне получить новое решение
Ответ №1:
К сожалению, вы не можете изменить включенное состояние встроенных кнопок ленты. Только на пользовательских кнопках ленты, которые вы добавляете сами.
Но есть пара решений, которые вы могли бы попробовать:
-
Модально отобразите диалоговое окно WinForm, чтобы убедиться, что пользователь должен завершить его, прежде чем продолжить
-
Обработайте Microsoft.Офис.Взаимодействие.Outlook.AppointmentItemClass.Напишите событие. ItemEvents_10_WriteEventHandler имеет параметр отмены ссылки, который вы можете установить в значение true, чтобы остановить сохранение встречи.
((ItemEvents_10_Event)appointmentItem).Write = AppointmentItem_Write;
Комментарии:
1. Большое спасибо за решение