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

 ***********************************************************

posted @ 2012-06-10 06:48  deepwzh  阅读(1925)  评论(0编辑  收藏  举报