WPF: bug na plataforma .Net quando se usa teclas de atalho para botões.

Há várias gerações, a plataforma .Net apresenta um bug quando se usa teclas de atalho para botões adicionando o caractere de sublinhado antes de uma letra na propriedade "Content" de um botão para que o botão seja acionado ao se apertar ALT + a letra. O que só deveria acontecer quando esta combinação de teclas fosse pressionada em conjunto passa a acontecer com o simples pressionar da letra sem o ALT. O impressionante é que isto está acontecendo até na versão 4.61 da plataforma .Net sem que a Microsoft tenha reparado o bug.

Para contornar este problema, encontrei uma rotina que chamo no começo da aplicação. Veja o código abaixo.

        /// Contorna um bug do WPF no .NET Framework que faz com que simples
        /// letras pressionadas equivalham a Alt + Letra quando se tem
        /// botões com sublinhado+letra no início do content. Ex.: Content="_Cancelar".
        /// Neste exemplo, um simples digitar da letra C já aciona o botão
        /// "Cancelar" no formulário.
        public static void AdjustAccessKeyPressed()
        {
            EventManager.RegisterClassHandler(typeof(UIElement),
            AccessKeyManager.AccessKeyPressedEvent,
            new AccessKeyPressedEventHandler(OnAccessKeyPressed));
        }

        private static void OnAccessKeyPressed(object sender, AccessKeyPressedEventArgs e)
        {
            if (Keyboard.IsKeyDown(System.Windows.Input.Key.Enter) || Keyboard.IsKeyDown(System.Windows.Input.Key.Escape)) return;

            if (!e.Handled && e.Scope == null && (e.Target == null || e.Target is Label))
            {

                // If Alt key is not pressed - handle the event

                if ((Keyboard.Modifiers & ModifierKeys.Alt) != ModifierKeys.Alt)
                {

                    e.Target = null;

                    e.Handled = true;

                }

            }
        }