Пример #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="protViewWindow"></param>
        /// <param name="protectedViewCloseReason"></param>
        /// <param name="cancel"></param>
        public void ProtectedViewWindowBeforeClose([In, MarshalAs(UnmanagedType.IDispatch)] object protViewWindow, [In] object protectedViewCloseReason, [In][Out] ref object cancel)
        {
            if (!Validate("ProtectedViewWindowBeforeClose"))
            {
                Invoker.ReleaseParamsArray(protViewWindow, protectedViewCloseReason, cancel);
                return;
            }

            NetOffice.PowerPointApi.ProtectedViewWindow newProtViewWindow = Factory.CreateKnownObjectFromComProxy <NetOffice.PowerPointApi.ProtectedViewWindow>(EventClass, protViewWindow, typeof(NetOffice.PowerPointApi.ProtectedViewWindow));
            NetOffice.PowerPointApi.Enums.PpProtectedViewCloseReason newProtectedViewCloseReason = (NetOffice.PowerPointApi.Enums.PpProtectedViewCloseReason)protectedViewCloseReason;
            object[] paramsArray = new object[3];
            paramsArray[0] = newProtViewWindow;
            paramsArray[1] = newProtectedViewCloseReason;
            paramsArray.SetValue(cancel, 2);
            EventBinding.RaiseCustomEvent("ProtectedViewWindowBeforeClose", ref paramsArray);

            cancel = ToBoolean(paramsArray[2]);
        }
Пример #2
0
        public void ProtectedViewWindowBeforeClose([In, MarshalAs(UnmanagedType.IDispatch)] object protViewWindow, [In] object protectedViewCloseReason, [In][Out] ref object cancel)
        {
            Delegate[] recipients = _eventBinding.GetEventRecipients("ProtectedViewWindowBeforeClose");
            if ((true == _eventClass.IsCurrentlyDisposing) || (recipients.Length == 0))
            {
                Invoker.ReleaseParamsArray(protViewWindow, protectedViewCloseReason, cancel);
                return;
            }

            NetOffice.PowerPointApi.ProtectedViewWindow newProtViewWindow = Factory.CreateObjectFromComProxy(_eventClass, protViewWindow) as NetOffice.PowerPointApi.ProtectedViewWindow;
            NetOffice.PowerPointApi.Enums.PpProtectedViewCloseReason newProtectedViewCloseReason = (NetOffice.PowerPointApi.Enums.PpProtectedViewCloseReason)protectedViewCloseReason;
            object[] paramsArray = new object[3];
            paramsArray[0] = newProtViewWindow;
            paramsArray[1] = newProtectedViewCloseReason;
            paramsArray.SetValue(cancel, 2);
            _eventBinding.RaiseCustomEvent("ProtectedViewWindowBeforeClose", ref paramsArray);

            cancel = (bool)paramsArray[2];
        }