O Prism 4: RequestNavigate () não está funcionando

Estou construindo um aplicativo de demonstração para aprender os recursos de navegação do Prism 4. O aplicativo possui dois módulos - cada um com três visualizações:

Um UserControl com um bloco de texto ("Bem-vindo ao Módulo A")Um RibbonTab (usando um adaptador de região) eUm botão de tarefa no estilo do Outlook (como o Mail, o Calendário e assim por diante) do Outlook

O Shell tem três regiões nomeadas: "RibbonRegion", "TaskButtonRegion" e "WorkspaceRegion". As visualizações são carregadas nessas regiões. Para testar a configuração básica, registrei todas as três visualizações no Prism Region Manager, para que elas fossem carregadas na inicialização e funcionassem conforme o esperado.

Em seguida, modifiquei a instalação para que apenas os botões de tarefas fossem carregados na inicialização. Outras visualizações seriam carregadas apenas mediante solicitação, clicando em um botão Tarefa. Meus inicializadores de módulo são assim:

public void Initialize()
{
    /* We register the Task Button with the Prism Task Button Region because we want it
     * to be displayed immediately when the module is loaded, and for the lifetime of
     * the application. */

    // Register Task Button with Prism Region
    m_RegionManager.RegisterViewWithRegion("TaskButtonRegion", typeof(ModuleATaskButton));

    /* We register these objects with the Unity container because we don't want them
     * instantiated until we navigate to this module. */ 

    // Register View and Ribbon Tab as singletons with Unity container
    m_Container.RegisterType(typeof(ModuleAView), "ModuleAView", new ContainerControlledLifetimeManager());
    m_Container.RegisterType(typeof(ModuleARibbonTab), "ModuleARibbonTab", new ContainerControlledLifetimeManager());
}

Quando o usuário clica em um botão de tarefa, ele chama um objeto ICommand que chamaIRegionManager.RequestNavigate() para mostrar as visualizações:

public void Execute(object parameter)
{
    // Initialize
    var regionManager = m_ViewModel.RegionManager;

    // Show Ribbon Tab
    var moduleARibbonTab = new Uri("ModuleARibbonTab", UriKind.Relative);
    regionManager.RequestNavigate("RibbonRegion", moduleARibbonTab);

    // Show View
    var moduleAView = new Uri("ModuleAView", UriKind.Relative);
    regionManager.RequestNavigate("WorkspaceRegion", moduleAView);
}

O comando está sendo chamado quando um botão de tarefa é clicado, mas o que recebo é o seguinte:

O UserControl aparentemente está carregando como umSystem.Object, e suspeito que o RibbonTab esteja carregando o mesmo. Eu acho que o problema está no meuRequestNavigate() chamada ou meu registro no Unity. Mas não consigo identificar o problema.

Alguém pode lançar alguma luz sobre o que está acontecendo? Obrigado pela ajuda.

questionAnswers(1)

yourAnswerToTheQuestion