public static List <KeyboardShortcut> CreateDefaultShortcuts(RoutedMethodRegistry mr)
        {
            List <KeyboardShortcut> ks = new List <KeyboardShortcut>();

            AddShortcut(ref ks, KeyboardCombination.Ctrl, Key.N, "mnuNew", mr);
            AddShortcut(ref ks, KeyboardCombination.CtrlShift, Key.N, "mnuNewWindow", mr);
            AddShortcut(ref ks, KeyboardCombination.Ctrl, Key.O, "mnuOpen", mr);
            AddShortcut(ref ks, KeyboardCombination.Ctrl, Key.W, "mnuClose", mr);
            AddShortcut(ref ks, KeyboardCombination.Ctrl, Key.S, "mnuSave", mr);
            AddShortcut(ref ks, KeyboardCombination.None, Key.F12, "mnuSaveAs", mr);
            AddShortcut(ref ks, KeyboardCombination.CtrlAlt, Key.S, "mnuSaveAs", mr);
            AddShortcut(ref ks, KeyboardCombination.CtrlAlt, Key.R, "mnuRevert", mr);
            AddShortcut(ref ks, KeyboardCombination.None, Key.F5, "mnuUpdate", mr);
            AddShortcut(ref ks, KeyboardCombination.Ctrl, Key.K, "mnuUpdate", mr);
            AddShortcut(ref ks, KeyboardCombination.Ctrl, Key.E, "mnuRawJson", mr);
            AddShortcut(ref ks, KeyboardCombination.Ctrl, Key.D1, "mnuScroll", mr);
            AddShortcut(ref ks, KeyboardCombination.Ctrl, Key.D2, "mnuTabs", mr);
            AddShortcut(ref ks, KeyboardCombination.Ctrl, Key.D3, "mnuRawJson", mr);
            AddShortcut(ref ks, KeyboardCombination.None, Key.F8, "mnuToolbar", mr);
            AddShortcut(ref ks, KeyboardCombination.Ctrl, Key.D, "mnuDiceRoll", mr);
            AddShortcut(ref ks, KeyboardCombination.CtrlAlt, Key.F1, "mnuAbout", mr);
            AddShortcut(ref ks, KeyboardCombination.Ctrl, Key.F1, "mnuFeedback", mr);

            return(ks);
        }
        private static void AddShortcut(ref List <KeyboardShortcut> list, KeyboardCombination combination, Key key, string method, RoutedMethodRegistry mr)
        {
            try
            {
                var res = mr[method];

                KeyboardShortcut ks = new KeyboardShortcut(combination, key, res.handler, res.methodId, res.menuItem);
                list.Add(ks);
            }
            catch (KeyNotFoundException) { }
        }