public static EventHandler CreateMenuItemHandler <TData>(MenuItemMethod <TData> method) { return((sender, e) => { var menuItem = sender as ToolStripItem; var dataItem = menuItem?.Tag as DataItem <TData>; if (dataItem != null) { method?.Invoke(dataItem.Data); } }); }
//--------------------------------------------------------------------- public static EventHandler CreateMenuDataClsItemHandler <TData>(MenuItemMethod <TData> method) where TData : class { return((sender, e) => { var menuItem = sender as ToolStripItem; var data = menuItem?.Tag as TData; if (data != null) { method?.Invoke(data); } }); }