.NET: Cuidado com os atalhos de teclado.

Um detalhe importante sobre os bindings é que alguns controles só atualizam a propriedade ligada quando o controle perde o foco. Este é o padrão, por exemplo, para a propriedade "Text" das caixas de texto em WPF. Isto é importante de ser observado, porque o clique sobre um botão para salvamento de informações em um formulário dispara o evento de perda de foco na caixa de texto ativa, o que faz com que seus dados sejam transferidos para a propriedade ligada no DataContext. Porém, se o botão for acionado por um atalho de teclado, o evento de perda de foco não ocorrerá e a propriedade ligada não será atualizada. Assim sendo, se você processa o evento Click do botão de salvamento, é sempre bom por segurança chamar seu método "Focus" logo no início do procedimento de evento para que o foco seja mudado para o botão e a caixa de texto atualize a propriedade ligada a ela. Se usar o padrão MVVM, a viewmodel deve ter algum meio de notificar a camada de interação com o usuário para que ela providencie a mudança de foco do controle atual antes de promover o salvamento dos dados, por exemplo, disparando um evento na viewmodel processado pelo formulário ou chamando um método numa classe que gerencie o relacionamento views-viewmodels.