public override void SetValue(object component, object value)
            {
                if (!GetFlag(FlagIgnoreCanAccessProperties) && !owner.CanAccessProperties)
                {
                    return;
                }

                // State oldOcxState = owner.OcxState;

                try
                {
                    SetFlag(FlagSettingValue, true);
                    if (PropertyType.IsEnum && value != null && value.GetType() != PropertyType)
                    {
                        baseProp.SetValue(component, Enum.ToObject(PropertyType, value));
                    }
                    else
                    {
                        baseProp.SetValue(component, value);
                    }
                }
                finally
                {
                    SetFlag(FlagSettingValue, false);
                }

                OnValueChanged(component);
                if (owner == component)
                {
                    owner.SetAxState(AxHost.valueChanged, true);
                }
            }
Пример #2
0
            unsafe HRESULT IOleControlSite.TranslateAccelerator(User32.MSG* pMsg, KEYMODIFIERS grfModifiers)
            {
                if (pMsg is null)
                {
                    return HRESULT.E_POINTER;
                }

                Debug.Assert(!_host.GetAxState(s_siteProcessedInputKey), "Re-entering IOleControlSite.TranslateAccelerator!!!");
                _host.SetAxState(s_siteProcessedInputKey, true);

                Message msg = *pMsg;
                try
                {
                    bool f = _host.PreProcessMessage(ref msg);
                    return f ? HRESULT.S_OK : HRESULT.S_FALSE;
                }
                finally
                {
                    _host.SetAxState(s_siteProcessedInputKey, false);
                }
            }
Пример #3
0
            unsafe HRESULT Ole32.IOleControlSite.TranslateAccelerator(User32.MSG *pMsg, Ole32.KEYMODIFIERS grfModifiers)
            {
                if (pMsg == null)
                {
                    return(HRESULT.E_POINTER);
                }

                Debug.Assert(!host.GetAxState(AxHost.siteProcessedInputKey), "Re-entering Ole32.IOleControlSite.TranslateAccelerator!!!");
                host.SetAxState(AxHost.siteProcessedInputKey, true);

                Message msg = *pMsg;

                try
                {
                    bool f = ((Control)host).PreProcessMessage(ref msg);
                    return(f ? HRESULT.S_OK : HRESULT.S_FALSE);
                }
                finally
                {
                    host.SetAxState(AxHost.siteProcessedInputKey, false);
                }
            }