FlavoredProjectBase 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
作为内部项目的子类型/风格的项目。
public ref class FlavoredProjectBase abstract : IServiceProvider, Microsoft::VisualStudio::OLE::Interop::IOleCommandTarget, Microsoft::VisualStudio::Shell::Flavor::IVsAggregatableProjectCorrected, Microsoft::VisualStudio::Shell::Interop::IVsUIHierarchy
public abstract class FlavoredProjectBase : IServiceProvider, Microsoft.VisualStudio.OLE.Interop.IOleCommandTarget, Microsoft.VisualStudio.Shell.Flavor.IVsAggregatableProjectCorrected, Microsoft.VisualStudio.Shell.Interop.IVsUIHierarchy
type FlavoredProjectBase = class
interface IVsAggregatableProjectCorrected
interface IServiceProvider
interface IVsHierarchy
interface IVsUIHierarchy
interface IOleCommandTarget
Public MustInherit Class FlavoredProjectBase
Implements IOleCommandTarget, IServiceProvider, IVsAggregatableProjectCorrected, IVsUIHierarchy
- 继承
-
FlavoredProjectBase
- 实现
注解
所有方法的默认行为是委托给内部项目。 对于要更改的任何行为,只需自行处理请求。
在 serviceProvider 尝试加载项目之前,必须设置此类的字段。
构造函数
| FlavoredProjectBase() |
初始化 FlavoredProjectBase 的新实例。 |
字段
| _innerOleCommandTarget |
内部命令目标。 |
| _innerVsAggregatableProject |
可聚合项目。 |
| _innerVsHierarchy |
内部层次结构。 |
| _innerVsUIHierarchy |
内部 UI 层次结构。 |
| serviceProvider |
服务提供程序。 |
方法
| AdviseHierarchyEvents(IVsHierarchyEvents) |
建议层次结构事件。 |
| Close() |
关闭层次结构。 |
| ExecCommand(UInt32, Guid, UInt32, UInt32, IntPtr, IntPtr) |
执行指定的命令。 |
| FreeInterfaces() |
释放构成层次结构的不同对象。 |
| GetCanonicalName(UInt32, String) |
获取指定元素的规范名称。 |
| GetComInterface<Interface_T>() |
派生自此基类的项目将使用本机 COM 组件进行聚合, (在 flavoring 的情况下,还可以聚合内部项目的 ProjectAggregator) 对象。 |
| GetGuidProperty(UInt32, Int32) |
获取指定项的 GUID。 |
| GetNestedHierarchy(UInt32, Guid, IntPtr, UInt32) |
获取嵌套的项目。 |
| GetProperty(UInt32, Int32, Object) | |
| GetSite() | |
| InitializeForOuter(String, String, String, UInt32, Guid, Boolean) |
允许项目初始化自身。 此时,可以调用内部项目。 此方法还允许取消项目创建过程。 |
| OnAggregationComplete() |
当聚合中的所有对象都已收到 InitializeForOuter 调用时,将调用此项。 此时聚合已完成,并且完全正常运行。 |
| ParseCanonicalName(String, UInt32) | |
| QueryClose() | |
| QueryStatusCommand(UInt32, Guid, UInt32, OLECMD[], IntPtr) | |
| SetGuidProperty(UInt32, Int32, Guid) | |
| SetInnerProject(IntPtr) |
对于内部对象上的接口,这是所有 QI,然后将 InitializeForOuter 调用以执行实际初始化 |
| SetProperty(UInt32, Int32, Object) | |
| UnadviseHierarchyEvents(UInt32) | |
| Unused0() | |
| Unused1() | |
| Unused2() | |
| Unused3() | |
| Unused4() | |
事件
| DirectoryAdded |
在将目录添加到此项目后调用。 |
| DirectoryRemoved |
从此项目中移除目录后调用。 |
| DirectoryRenamed |
在此项目中重命名目录后调用。 |
| FileAdded |
在将文件添加到此项目后调用。 |
| FileRemoved |
从此项目中移除文件后调用。 |
| FileRenamed |
在此项目中重命名文件后调用。 |
| SccStatusChanged |
在此项目中的文件的源代码管理状态更改后调用。 |
显式接口实现
扩展方法
| IsCapabilityMatch(IVsHierarchy, String) |
检查给定的项目是否与 AppliesTo 表达式中规定的要求匹配。 |
| EnumImportingProjects(IVsHierarchy) |
枚举所有正在导入由给定共享项目层次结构拥有的共享资产的项目。 |
| EnumOwningProjectsOfSharedAssets(IVsHierarchy) |
枚举所有拥有和管理给定项目所导入的共享资产的共享项目。 |
| GetActiveProjectContext(IVsHierarchy) |
获取活动项目上下文。 |
| GetSharedItemsImportFullPaths(IVsHierarchy) |
获取给定项目导入的共享 "projitems" 文件的完整路径。 |
| IsProjectImportingSharedAssets(IVsHierarchy) |
给定的项目是否正在导入共享资产? |
| IsSharedAssetsProject(IVsHierarchy) |
给定的项目是否为共享项目? |
| SetActiveProjectContext(IVsHierarchy, IVsHierarchy) |
设置活动项目上下文。 |