以下示例演示GetCommandString的简单实现,该实现对应于本主题的IContextMenu::QueryContextMenu 方法部分中给出的 QueryContextMenu 示例。由于处理程序只添加一个菜单项,因此只能返回一组字符串。 方法测试idCmd是否有效,如果有效,则返回请求的字符串。 StringCchCopy函数用于将请求的字符串复制到pszName,以确保复制的字符...
IContextMenu 接口具有这些方法。 展开表 IContextMenu::GetCommandString 获取有关快捷菜单命令的信息,包括命令的帮助字符串和与语言无关或规范的名称。 IContextMenu::InvokeCommand 执行与快捷菜单项关联的命令。 IContextMenu::QueryContextMenu 将命令添加到快捷菜单。 注解 何时实现 在以下情况下实现 IContextMen...
IContextMenu 是一个接口,我们这样定义: IContextMenu.cs 然后,通过 IParent 的 GetUIObjectOf 方法我们可以得到该节点的一个或多个指定子节点的 IContextMenu 接口: GetUIObjectOf //得到 IContextMenu 接口 IntPtr iContextMenuPtr = IntPtr.Zero; iContextMenuPtr = IParent.GetUIObjectOf(IntPtr.Zero, (uin...
我们必须先得到 IContextMenu 接口: //得到 IContextMenu 接口 IntPtr iContextMenuPtr = IntPtr.Zero; iContextMenuPtr = IParent.GetUIObjectOf(IntPtr.Zero, (uint)pidls.Length, pidls, ref Guids.IID_IContextMenu, out iContextMenuPtr); IContextMenu iContextMenu = (IContextMenu)Marshal.GetObject...
IContextMenuContextMenuInfo IContextMenuExtensions IMenu IMenuExtensions IMenuItem IMenuItemExtensions IMenuItemOnActionExpandListener IMenuItemOnMenuItemClickListener ImportantForAccessibility(無障礙功能的重要性) 重要自動填充 InflateException 輸入裝置 (InputDevice) InputDevice.InterfaceConsts 輸入設備.運動範圍 ...
存储偏移量以供参考,因为它们可用于在后续调用 IContextMenu::GetCommandString 和IContextMenu::InvokeCommand 时标识命令。 如果Shell 随后调用另一个快捷菜单处理程序,它将在调用该处理程序的 QueryContextMenu 方法时使用返回的 HRESULT 的代码值来设置 idCmdFirst。 当上下文菜单处理程序添加弹出菜单项...
public static IShellFolder GetShellFolder(IShellFolder desktop, string path, out IntPtr Pidl) { IShellFolder IFolder; uint i, j = 0; desktop.ParseDisplayName(IntPtr.Zero, IntPtr.Zero, path, out i, out Pidl, ref j); desktop.BindToObject(Pidl, IntPtr.Zero, ref Guids.IID_IShellFolder...
IContextMenu 是一个接口,我们这样定义: IContextMenu.cs 然后,通过 IParent 的 GetUIObjectOf 方法我们可以得到该节点的一个或多个指定子节点的 IContextMenu 接口: GetUIObjectOf //得到 IContextMenu 接口 IntPtr iContextMenuPtr = IntPtr.Zero;
简介: 原文(C#)Windows Shell 编程系列3 - 上下文菜单(iContextMenu)(一)右键菜单接上一节:(C#)Windows Shell 编程系列2 - 解释,从“桌面”开始展开这里解释上一节中获取名称的方法 GetDisplayNameOf 定义: void GetDisplayNameOf( IntPtr pidl, SHGNO uFlags, IntPtr lpName); 该方法是用来转换PIDL成为可显示...
IContextMenu 接口具有这些方法。 展开表 IContextMenu::GetCommandString 获取有关快捷菜单命令的信息,包括命令的帮助字符串和与语言无关或规范的名称。 IContextMenu::InvokeCommand 执行与快捷菜单项关联的命令。 IContextMenu::QueryContextMenu 将命令添加到快捷菜单。 注解 何时实现 在以下情况下实现 IContextMen...