[Windows 8 App]Charms Bar介紹(後台程式碼)

[Windows 8 App]Charms Bar介紹(後台程式碼)

 

在開始寫後台的程式碼之前,先了解需要用到的方法和類別

 

SrttingsPane類別:在 using Windows.UI.ApplicationSettings 的命名空間下

使應用程式可以編輯設定面板中的設定選項,例如:新增、移除命令或接收通知

 

IUICommand類別:在 using Windows.UI.Popups 的命名空間下

表示上下文選單或對話方框中的命令

 

SettingsCommand類別:在Windows.UI.ApplicationSettings 的命名空間下

表示設定面板中的設定選項

 

開啟【MainPage.xaml.cs】

在我們剛剛點擊的Button的Click事件下輸入一段程式碼

private void ReadingModeSetting_Click(object sender, RoutedEventArgs e)
{
   SettingsPane.GetForCurrentView().CommandsRequested += SetReadingModeCommandsRequested;
   SettingsPane.Show();
}

 

在上面的方法中為SettingsPane類別的GetForCurrentView().CommandsRequested事件註冊事件處理方法SetReadModeCommandsRequested

在用戶按下”更改閱讀模式”按鈕時打開設置面板時,會啟用這個方法來項設定面板中新增設定選項

最後調整SettingsPane類別的Show方法,這樣使用者在點擊葉面中的按鈕時就會自動彈出設定面板

 

下面是SetReadingModeCommandsRequested 的方法,用來設置選項以及將設置選項新增道設置面板中

程式碼如下:

 

void SetReadingModeCommandsRequested(SettingsPane settingsPane, SettingsPaneCommandsRequestedEventArgs eventArgs)
        {
            eventArgs.Request.ApplicationCommands.Clear();

            SettingsCommand daytimeModeCommand = new SettingsCommand("dayReadingModeSettings"
                , "日間閱讀系統", (IUICommand command) =>
            {
                ShowSettings.Text = "已切換為日間閱讀模式";
            });

            eventArgs.Request.ApplicationCommands.Add(daytimeModeCommand);

            SettingsCommand nighttimeModeCommand = new SettingsCommand(
                "nightReadingModeSettings", "夜間閱讀模式" ,(IUICommand command) =>
                    {
                        ShowSettings.Text = "已切換為夜間閱讀模式";
                    });

            eventArgs.Request.ApplicationCommands.Add(nighttimeModeCommand);
        }

 

上面的程式碼中,首先調整參數eventArgs的Request.ApplicationCommands.Clear 方法清空設置面板中的設置選項

這樣可以避免重複新增

接著兩個SettingsCommand類別用來定義設定面板的設定選項

兩個設定選項的方式都是一樣的,差別在於一個是日間的,一個是夜間的

那我們拿日間的來做介紹,夜間的也是一樣的意思

SettingsCommand 類別定義ID為daytimeModeCommand

選項的顯示文字為"日間閱讀模式"

並且在做選擇後,文字方塊顯示為"已切換為日間閱讀模式"

最後,用eventArgs對象的Request.ApplicationCommands.Add方法將"日間閱讀模式"選項新增到設定面板中

夜間模式與日間模式是一樣的意思!!

 

專案的執行畫面:

246

 

點擊閱讀模式,會開啟右邊的功能欄

247

 

這是準備點擊夜間閱讀模式

 

 

 

248

 

可以看到日間模式轉換成夜間模式

249