IOleInPlaceComponentUIManager.UIActivateForMe Yöntem (UInt32, Guid, IOleInPlaceActiveObject, IOleCommandTarget, UInt32, Int32 )
İsteklerine SOleComponentUIManager hizmet etkinleştirme veya devre dışı bırakma yerinde VSPackage nesnenin katılın.
Ad Alanı: Microsoft.VisualStudio.Shell.Interop
Derleme: Microsoft.VisualStudio.Shell.Interop (Microsoft.VisualStudio.Shell.Interop.dll içinde)
Sözdizimi
int UIActivateForMe(
uint dwCompRole,
[InAttribute] ref Guid rclsidActive,
IOleInPlaceActiveObject pIPActObj,
IOleCommandTarget pCmdTrgtActive,
uint cCmdGrpId,
int[] rgnCmdGrpId
)
int UIActivateForMe(
unsigned int dwCompRole,
[InAttribute] Guid% rclsidActive,
IOleInPlaceActiveObject^ pIPActObj,
IOleCommandTarget^ pCmdTrgtActive,
unsigned int cCmdGrpId,
array<int>^ rgnCmdGrpId
)
abstract UIActivateForMe :
dwCompRole:uint32 *
rclsidActive:Guid byref *
pIPActObj:IOleInPlaceActiveObject *
pCmdTrgtActive:IOleCommandTarget *
cCmdGrpId:uint32 *
rgnCmdGrpId:int[] -> int
Function UIActivateForMe (
dwCompRole As UInteger,
<InAttribute> ByRef rclsidActive As Guid,
pIPActObj As IOleInPlaceActiveObject,
pCmdTrgtActive As IOleCommandTarget,
cCmdGrpId As UInteger,
rgnCmdGrpId As Integer()
) As Integer
Parametreler
dwCompRole
Type: System.UInt32[in] Ya da etkinleştirme veya devre dışı bırakma yerinde VSPackage nesne rolü. İçin geçerli dwCompRole değerler, bakın OLEROLE.
rclsidActive
Type: System.Guid[in] Sınıf, ya da etkinleştirme veya devre dışı bırakma yerinde VSPackage nesne tanımlayıcısı (CLSID).
pIPActObj
Type: Microsoft.VisualStudio.OLE.Interop.IOleInPlaceActiveObject[in] İşaretçi IOleInPlaceActiveObject en içteki etkin nesnenin arabirimi.pIPActObj Parametresi olmalıdır null yerinde nesnenin ne zaman devre dışı ve onu etkinleştirilirken geçerli arabirim işaretçisi.
pCmdTrgtActive
Type: Microsoft.VisualStudio.OLE.Interop.IOleCommandTarget[in] İşaretçi IOleCommandTarget Etkin yerinde nesne komutlarını göndermeyi işlemek için arabirim.pCmdTrgtActive Parametresi olmalıdır yerinde nesne devre dışı bırakılırken null ve geçerli arabirim işaretçisi, etkinleştirilirken.
cCmdGrpId
Type: System.UInt32[in] Özel araç çubuğu tanımlayıcılarında sayısı rgnCmdGrpId parametresi.
rgnCmdGrpId
Type: System.Int32[][in] Dizi tarafından görüntülenecek özel araç çubuğu için tanıtıcıları SOleComponentUIManager hizmet.
Dönüş Değeri
Type: System.Int32
Yöntem başarılı olursa, döndürür S_OK. Başarısız olursa, bir hata kodu döndürür.
Notlar
COM imza
Oleipc.idl:
HRESULT IOleInPlaceComponentUIManager::UIActivateForMe(
[in] DWORD dwCompRole,
[in] REFCLSID rclsidActive,
[in] IOleInPlaceActiveObject *pIPActObj,
[in] IOleCommandTarget *pCmdTrgtActive,
[in] ULONG cCmdGrpId,
[in] LONG *rgnCmdGrpId
);
UIActivateForMe kullanımını ayırır birincil yöntemdir SOleComponentUIManager hizmeti ile geleneksel OLE yerinde etkinleştirme. Yerinde VSPackage nesneyi çağırdığında UIActivateForMe, SOleComponentUIManager hizmeti nesnenin menüleri, araç çubuklarını ve komutlar ortamına tümleştirme tüm gerekli adımları alır. Nesne, anlaşma için OLE yerinde etkinleştirme gerekli olduğu gibi menü birleştirmeyi etkinleştirmeyi kenarlık alanı'na katılmak gerekmez.
UIActivateForMe için mantıksal yerini SetActiveObject yönteminde IOleInPlaceFrame arabirimi. Yerinde VSPackage nesneyi geçirir, pIPActObj Bu yöntemle yerine kapsayıcının ortamında işaretçisine UIActivateForMe standart OLE yerinde etkinleştirme gibi yöntemi.
Uygulamak için UIActivateForMe, bu yöntem, bir uygulama koordine UIActivateForMe yönteminde IOleInPlaceFrame arabirimi. Bu çağrı bir OLE nesne arama benzer sahiptir:
IOleInPlaceUIWindow::SetActiveObject(pActiveObj);
IOleInPlaceFrame::SetMenu(null);
IOleInPlaceUIWindow::SetBorderSpace(null);
Ne zaman bir yerinde VSPackage nesne alan odağı çağırarak UIActivateForMe, SOleComponentUIManager herhangi özel menüleri ve araç çubuklarını önceki etkin nesne olanla yeni etkin nesnenin adına görüntülenen Hizmeti'nin yerini almaktadır. Yeni nesne odağı kaybettiğinde veya iç içe nesne odağı alır, bu menüleri ve araç çubuklarını kaldırılır.
Ayrıca bkz.
IOleInPlaceComponentUIManager Arabirim
Microsoft.VisualStudio.Shell.Interop Ad Alanı
Başa dön