本例是基础的导航应用

在窗口中布局了2个按钮,一个区域

  1. <DockPanel LastChildFill="True">
  2. <StackPanel Orientation="Horizontal" DockPanel.Dock="Top" Margin="5" >
  3. <Button Command="{Binding NavigateCommand}" CommandParameter="ViewA" Margin="5">Navigate to View A</Button>
  4. <Button Command="{Binding NavigateCommand}" CommandParameter="ViewB" Margin="5">Navigate to View B</Button>
  5. </StackPanel>
  6. <ContentControl prism:RegionManager.RegionName="ContentRegion" Margin="5" />
  7. </DockPanel>

其中2个按钮绑定了同一个命令,只是参数不同,即命令是导航,目标不同。

  1. public DelegateCommand<string> NavigateCommand { get; private set; }
  2.  
  3. public MainWindowViewModel(IRegionManager regionManager)
  4. {
  5. _regionManager = regionManager;
  6.  
  7. NavigateCommand = new DelegateCommand<string>(Navigate);
  8. }
  9.  
  10. private void Navigate(string navigatePath)
  11. {
  12. if (navigatePath != null)
  13. _regionManager.RequestNavigate("ContentRegion", navigatePath);
  14. }

扩展模块定义了2个视图,用作导航的视图。要点是在模块中注册为导航视图。

  1. public class ModuleAModule : IModule
  2. {
  3. public void OnInitialized(IContainerProvider containerProvider)
  4. {
  5.  
  6. }
  7.  
  8. public void RegisterTypes(IContainerRegistry containerRegistry)
  9. {
  10. containerRegistry.RegisterForNavigation<ViewA>();
  11. containerRegistry.RegisterForNavigation<ViewB>();
  12. }
  13. }

Prism Sample 17-BasicRegionNavigation的更多相关文章

  1. Android 主题动态切换框架:Prism

    Prism(棱镜) 是一个全新的 Android 动态主题切换框架,虽然是头一次发布,但它所具备的基础功能已经足够强大了!本文介绍了 Prism 的各种用法,希望对你会有所帮助,你也可以对它进行扩展, ...

  2. [转]Blue Prism Architecture

    本文转自:https://mindmajix.com/blue-prism-architecture Introduction Automation technology is widely bloo ...

  3. PHP数据结构预热:PHP的迭代器(转)

    迭代器有时又称光标(cursor)是程式设计的软件设计模式,可在容器物件(container,例如list或vector)上遍访的接口,设计人员无需关心容器物件的内容. 各种语言实作Iterator的 ...

  4. PRaCtice[1]

    目录 ID-3学习 代码实现 1. 样例数据集 2.信息熵的计算 ID-3学习 代码实现 该项目采用了业界领先的 TDD(TreeNewBee-Driven Development,吹牛逼导向开发模式 ...

  5. linux常用配置文件和命令总结

    常用配置文件说明: 1..设置-n永远生效:Vim的配置文件:命令模式想永久生效, ~/.vimrc,新建文件,在里面输入保存即可 2.设置别名永远生效:在~/.bashrc  修改当前用户家目录里的 ...

  6. 更准确的测试Java程序性能——JMH基准测试

    什么是JMH ​ JMH,即Java Microbenchmark Harness,Java平台下的一套微基准测试工具.如果我们需要测试API性能的话,就可以用上这个工具,所以它并不是取代单元测试的. ...

  7. 解决: DeprecationWarning: Passing 1d arrays as data is deprecated in 0.17 and will raise ValueError in 0.19

    错误信息:C:\Python27\lib\site-packages\sklearn\utils\validation.py:395: DeprecationWarning: Passing 1d a ...

  8. Basic linux command-with detailed sample

    Here I will list some parameters which people use very ofen, I will attach the output of the command ...

  9. [转]simple sample to create and use widget for nopcommerce

    本文转自:http://badpaybad.info/simple-sample-to-create-and-use-widget-for-nopcommerce Here is very simpl ...

  10. [转] Spring MVC sample application for downloading files

    http://www.codejava.net/frameworks/spring/spring-mvc-sample-application-for-downloading-files n this ...

随机推荐

  1. LR12输出+日志

    LR12输出 输出函数:1.lr_log_message() // 输出信息,并记录到 output.txt 中:2.lr_output_message() // 输出信息,不记录到日志文件中:3.l ...

  2. 调用d2l.plt.imshow(img)不报错、不显示图像的问题

    解决方案: 加入如下所示的代码: import matplotlib.pyplot as plt d2l.plt.imshow(img) plt.show()

  3. .net创建、发布、引用webservice项目

    创建webservice引用 增加代码: 运行如下: 之后就可以发布我们的项目了,右击项目,选择发布: 此地址不要选择项目地址,另外创建一个地址: 至此,发布成功,接下来iis增加web网站: 这里i ...

  4. UMA插件专题(一)——基础网格创建

    什么是UMA? UMA,Unity Multipurpose Avatar,是一个开源Avatar创建框架,通过它可以实现自定义人物(或任何生物)的模型,包括换装,改变身材样貌等功能. 现在先从UMA ...

  5. .DS_Store泄露利用过程

    .DS_Store文件泄漏利用工具: ds_store_exp.DS_Store是Mac下Finder用来保存如何展示 文件/文件夹 的数据文件,每个文件夹下对应一个. 如果开发/设计人员将.DS_S ...

  6. loadrunner添加/清除 cookies

    web_add_cookie("reloadCount=1;domain={Host}"); 清除 cookies web_cleanup_cookies():

  7. LeetCode86 分隔链表

    idea: 烦死了,这个题一直因为创立的指针为空,或者接入结点方法不对,结果将两个小链表搞混乱了,不过具体思路ok.将小值结点成一组,大值结点成一组,最后在首尾相连,实现起来也比较简单 /**  *  ...

  8. Jsp 总结

    JSP中的include的两种用法 1.两种用法 <@inlcude file ="header.jsp"/> 此时引入的是静态的jsp文件,它将引入的jsp中的源代码 ...

  9. win10安装node-red遇到的问题及解决方法

    1.安装失败 原因:没有管理员权限,需要用powershell(管理员)来安装 2.安装完成后运行失败 出现下面的情况 PS C:\WINDOWS\system32> node-rednode- ...

  10. (Winform程序带源码) 弹出输入框和获取输入框的值

    弹出输入框和获取输入框的值: private void button1_Click(object sender, EventArgs e) { string returnValue = Microso ...