Metro学习笔记+心得+体会(五)-------侧边栏、弹出菜单和对话框
*************************************
版权归作者和博客园共同所有,文章链接:http://www.cnblogs.com/Wade-/archive/2012/06/09/2543433.html
*************************************
AppBar是Metro程序的侧边栏,单击右键就会弹出它,你可以利用它很方便的完成某些操作。
AppBar在这里用法很简单,顶级标记Page.TopAppBar指示AppBar在应用程序上边显示,包含在AppBar标记里的是内容,按钮中的Style来自于系统中的StandardStyles.xaml:
<Page.TopAppBar> <AppBar> <StackPanel Orientation="Horizontal"> <Button Click="Button_Click_1" Style="{StaticResource PreviousAppBarButtonStyle}"></Button> <Button Click="Button_Click_2" Style="{StaticResource NextAppBarButtonStyle}"></Button> <Button Click="Button_Click_3" Style="{StaticResource HomeAppBarButtonStyle}"></Button> </StackPanel> </AppBar> </Page.TopAppBar>
Popups是一个命名空间,其完整命名空间名是Windows.UI.Popups,其中包含了对话框和弹出菜单的操作。
例如你需要显示一个对话框,你可以利用MessageDialog很方便的完成这项工作:
MessageDialog dialg = new MessageDialog("你单击了Previous按钮!!!","提示"); //实例化一个对话框 await dialg.ShowAsync();//显示它
这里用了它的构造函数直接设置了内容(前一个)和标题(后一个),也可以通过属性设置。
另外,
再讲一下PopupMenu,PopupMenu是一个弹出菜单,通过它的Commands属性的Add方法为它添加菜单项,添加类型为UICommand类,实现IUICommand接口。
UICommand的第一个参数设置菜单项标题;可以相应菜单项单击事件,通过UICommand的第二个参数设定;第三个参数是标示符,它应该是惟一的。
UICommandSeparator是分隔符,分隔两个菜单项,同样是用上边的方法添加。
最后通过 ShowForSelectionAsync或ShowAsync显示。在这里我用的是ShowForSelectionAsync:
PopupMenu menu =
new Windows.UI.Popups.PopupMenu(); menu.Commands.Add(new UICommand("你单击了Next",new UICommandInvokedHandler(menu1), 1)); //添加菜单项 UICommandSeparator uic = new UICommandSeparator();//分隔符 menu.Commands.Add(uic);//添加分隔符 await menu.ShowForSelectionAsync(new Rect(),Placement.Right); //显示位置
最后,还是老规矩,奉上源码一份:
************************************************************
https://skydrive.live.com/redir?resid=F408A3D3DF420664!216&authkey=!AKZmqtMV1c_66xw
***********************************************************