zoukankan      html  css  js  c++  java
  • Win 8 自定义设置面版

    今日 10 点,上海,微软中国在 Windows 8 10 月 26 日的全球正式发布前,带我们先睹这全新的系统和硬件的魅力所在!

    微软全球 Windows 与 Windows Live 事业部总裁 Steven Sinofsky 和微软全球资深副总裁、大中华区董事长兼首席执行官贺乐赋( Ralph Haupter )共同出席了庆祝活动。

    漫长的等待,Win 8 终于快发布了。期待中。。。

    下面是我自己学习的Win 8小Sample,为了以后方便学习,特做一些记录。

    效果如下图: 右边添加了三个命令,分别为:First Custom Command,Second Custom Command,Third Custom Command。

    图1-设置面版

    图2-自定义用户控件 右边的控件是用户自己定义的控件,我这里定义的很简单。

    关键代码如下:

    1、添加命令道设置面版中. 分别添加了三个命令。以及三个命令对应的操作。这里定义的很简单,自己可以定义的更复杂一些。

    View Code
            private void AddCommandToSettingPanel()
            {
                //Add three command to Setting Panel.
                SettingsCommand cmd1 = new SettingsCommand("1", "First Custom Command",
                    c =>
                    {
                        SettingPanelUC uc = new SettingPanelUC();
                        uc.Show();
                    });
                SettingsCommand cmd2 = new SettingsCommand("2", "Second Custom Command",
                    c =>
                    {
                        ShowMessageTBK.Text = "Second Custom Command Click";
                    });
                SettingsCommand cmd3 = new SettingsCommand("3", "Third Custom Command",
                    c =>
                    {
                        ShowMessageTBK.Text = "Third Custom Command Click";
                    });
    
                //Add command in CommandsRequested Event.
                SettingsPane.GetForCurrentView().CommandsRequested += (sp, arg) =>
                {
                    arg.Request.ApplicationCommands.Add(cmd1);
                    arg.Request.ApplicationCommands.Add(cmd2);
                    arg.Request.ApplicationCommands.Add(cmd3);
                };
            }

    2、显示设置面版

            private void ShowSettingsPanel(object sender, RoutedEventArgs e)
            {
                //Show Setting Panel
                Windows.UI.ApplicationSettings.SettingsPane.Show();
            }

    3、自定义控件关键代码:

    public sealed partial class SettingPanelUC : UserControl
        {
            Popup pop = null;
            public SettingPanelUC()
            {
                this.InitializeComponent();
                this.Width = 360d;
                this.Height = Window.Current.Bounds.Height;
                this.pop = new Popup();
                this.pop.Child = this;
                this.pop.IsLightDismissEnabled = true;
    
                //Make the user control is on the right.
                pop.HorizontalOffset = Window.Current.Bounds.Width - this.Width;
                pop.VerticalOffset = 0d;
    
                //Animation for the user control.
                this.Transitions = new Windows.UI.Xaml.Media.Animation.TransitionCollection();
                EdgeUIThemeTransition et = new EdgeUIThemeTransition();
                et.Edge = EdgeTransitionLocation.Right;
                this.Transitions.Add(et);         
            }
    
            /// <summary>
            /// 显示控件
            /// </summary>
            public void Show()
            {
                if (pop != null)
                {
                    pop.IsOpen = true;
                }
            }
    
            /// <summary>
            /// 隐藏控件
            /// </summary>
            public void Hide()
            {
                if (pop != null)
                {
                    pop.IsOpen = false;
                }
            }
    
            private void Back(object sender, RoutedEventArgs e)
            {
                this.Hide();
                Windows.UI.ApplicationSettings.SettingsPane.Show();
            }
        }

    总结:Win 8 设置面版还是挺简单的,我这里只是学习写了一些简单的东西,并记录下,方便自己以后再次学习。

    希望园子里的朋友能多多指教,我也是一名Win 8 初学者。当然,里面的自定义控件的复杂逻辑还是要靠自己去写的。

    作者:Work Hard Work Smart
    出处:http://www.cnblogs.com/linlf03/
    欢迎任何形式的转载,未经作者同意,请保留此段声明!

  • 相关阅读:
    【Prince2科普】Prince2七大主题之概论
    浅谈PRINCE2和PMP体系架构有何区别?
    Prince2是怎么考试的?
    Reporting Service服务SharePoint集成模式安装配置(3、4、安装sharepoint 2010必备组件及产品)
    Reporting Service服务SharePoint集成模式安装配置(1、虚拟机+ 2、AD域环境配置)
    DB2 添加license
    db2中临时表在存储过程中的使用
    DB2 函数快速构造测试数据
    db2 中 SQL判断物理表是否存在、修改表名
    DB2触发器简单例子
  • 原文地址:https://www.cnblogs.com/linlf03/p/2735450.html
Copyright © 2011-2022 走看看