IVsUIHierWinClipboardHelper 接口

协调层次结构之间的剪贴板操作在 UI 层次结构 " 窗口。

命名空间:  Microsoft.VisualStudio.Shell.Interop
程序集:  Microsoft.VisualStudio.Shell.Interop(在 Microsoft.VisualStudio.Shell.Interop.dll 中)

语法

声明
<InterfaceTypeAttribute()> _
<GuidAttribute("DF29D855-D0EC-4DA1-BCC3-42FA3A09B1CB")> _
Public Interface IVsUIHierWinClipboardHelper
[InterfaceTypeAttribute()]
[GuidAttribute("DF29D855-D0EC-4DA1-BCC3-42FA3A09B1CB")]
public interface IVsUIHierWinClipboardHelper

IVsUIHierWinClipboardHelper 类型公开以下成员。

方法

  名称 说明
公共方法 AdviseClipboardHelperEvents 建立层次结构剪贴板帮助器事件的客户端请注意,不包含实现 IConnectionPointContainer的该层次结构。
公共方法 Copy 复制层次结构的数据对象到剪贴板。
公共方法 Cut 剪切从层次结构的数据对象到剪贴板。
公共方法 Paste 从剪贴板粘贴的数据对象到该层次结构。
公共方法 UnadviseClipboardHelperEvents 禁用层次结构剪贴板帮助器事件的客户端通知,而无需层次结构实现 IConnectionPointContainer

页首

备注

要协调它与其他层次结构的剪贴板操作的所有层次结构应该实现 IVsUIHierWinClipboardHelperEvents 和注册通过调用 AdviseClipboardHelperEvents接收剪贴板事件的通知。

下面是一个典型的剪切和粘贴顺序的示例在层次结构之间的:

  1. 用户执行一个项目项的 " 剪切 " 命令项目层次结构中。

  2. 源项目创建一个包含数据的 IDataObject 在 CF_VSPROJECTITEMS 格式 (类似于 CF_HDROP 格式)。 除了 IDataObject 外 OLE,源层次结构还将其传递给环境。 Cut 方法。

  3. 源项目通过调用 ExpandItem 并指定 EXPF_CutHighlightItemEXPF_AddCutHighlightItem的值更改剪辑项的外观,根据。

  4. 用户执行项目项的粘贴。

  5. 目标项目处理 IDataObject的目录,然后进行粘贴通过调用 Paste发生。

  6. 当其 Paste 调用方法时, IVsUIHierWinClipboardHelper 接口通过调用 AdviseClipboardHelperEvents 层次结构的列表重复并对每个的 OnPaste 。 当源项目此类调用时,它应通过删除剪辑项目完成 " 剪切 " 命令其层次结构。

IVsUIHierWinClipboardHelper 接口也是剪贴板,观察程序,因此,当剪贴板的内容更改时,因此,剪辑 IDataObject 不再在剪贴板,每个侦听器 OnClear 方法调用。 这样, " 剪切 " 项目可以清楚地通过调用 ExpandItem 并指定 EXPF_UnCutHighlightItem的值。 在复制情况下,,因为它没有剪切,该项不需要为灰色。

请参见实现和/或调用的插图在该示例 Basic Project的此接口。

对实现者的说明

实现通过环境。

对调用者的说明

调用支持剪切、复制和粘贴操作的层次结构。

请参见

参考

Microsoft.VisualStudio.Shell.Interop 命名空间