int IContextMenu.GetCommandString(IntPtr commandIdOffset, GetCommandStringOptions flags, int reserved, IntPtr result, int charCount) { Debug.WriteLine("[{0}] ContextMenuBase.IContextMenu.GetCommandString (commandIdOffset={1}, flags={2}, result={3}, charCount={4})", Id, commandIdOffset, flags, result, charCount); switch (flags) { case GetCommandStringOptions.HelpText: var index = commandIdOffset.ToInt32(); var item = menuItems[index]; StringToPtr(item.HelpText, result, charCount); return(HResults.Ok); case GetCommandStringOptions.CanonicalVerb: case GetCommandStringOptions.CanonicalVerbAnsi: return(HResults.ErrorFail); default: throw new NotSupportedException(); } }
int IContextMenu3.GetCommandString(IntPtr idCommand, GetCommandStringOptions uflags, int reserved, IntPtr name, int cch) { return(((IContextMenu)this).GetCommandString(idCommand, uflags, reserved, name, cch)); }