private void WmMeasureMenuItem(ref Message m)
        {
            System.Windows.Forms.NativeMethods.MEASUREITEMSTRUCT lParam = (System.Windows.Forms.NativeMethods.MEASUREITEMSTRUCT)m.GetLParam(typeof(System.Windows.Forms.NativeMethods.MEASUREITEMSTRUCT));
            MenuItem menuItemFromItemData = MenuItem.GetMenuItemFromItemData(lParam.itemData);

            if (menuItemFromItemData != null)
            {
                menuItemFromItemData.WmMeasureItem(ref m);
            }
        }
Ejemplo n.º 2
0
        private void WmMeasureMenuItem(ref Message m)
        {
            // Obtain the menu item object
            NativeMethods.MEASUREITEMSTRUCT mis = (NativeMethods.MEASUREITEMSTRUCT)m.GetLParam(typeof(NativeMethods.MEASUREITEMSTRUCT));

            Debug.Assert(m.LParam != IntPtr.Zero, "m.lparam is null");

            // A pointer to the correct MenuItem is stored in the measure item
            // information sent with the message.
            // (See MenuItem.CreateMenuItemInfo)
            MenuItem menuItem = MenuItem.GetMenuItemFromItemData(mis.itemData);

            Debug.Assert(menuItem != null, "UniqueID is not associated with a menu item");

            // Delegate this message to the menu item
            if (menuItem != null)
            {
                menuItem.WmMeasureItem(ref m);
            }
        }