上一節(jié)中我們學(xué)習(xí)了如何將應(yīng)用設(shè)置保存到本地,這種方式是通過在 App 內(nèi)添加設(shè)置選項,這里還有一種方式。微軟將其稱為“設(shè)置”合約,并且所有的 Windows 應(yīng)用商店應(yīng)用都將自動配合這種合約。但是應(yīng)用自帶的這種設(shè)置如果不做任何修改可謂毫無作用。而我們添加這些設(shè)置則可以讓應(yīng)用更加個性化哦。
首先新建一個 SettingsFlyout 頁面,也許很多童鞋會像我當(dāng)初學(xué)這個一樣立馬就調(diào)試程序等著看看這個設(shè)置是長什么樣,不過現(xiàn)在還用不了哦。
如下所示,我們可以修改 IconSource 來改變”設(shè)置“中的圖標(biāo)。
然后我將設(shè)置界面的布局設(shè)置如下咯。
<StackPanel VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Orientation="Vertical">
<StackPanel Orientation="Vertical" >
<TextBlock Text="Big Car 的美好一天" FontSize="28" Foreground="Red" Margin="12"/>
<TextBlock Text="購買一輛Big Car會讓你的生活充滿活力,充滿激情!" FontSize="20"
Margin="12" TextWrapping="Wrap" Foreground="Black"/>
<TextBlock Text="想購買的話可以直接發(fā)郵件 nomasp@outlook.com" FontSize="20" Margin="12"
Foreground="Gold" TextWrapping="Wrap"/>
</StackPanel>
<StackPanel Orientation="Vertical" Margin="8">
<ToggleSwitch x:Name="toggleSwitch1" Header="每日更新Big Car的最新圖片" OnContent="On"
OffContent="Off" Toggled="ToggleSwitch_Toggled" />
<ToggleSwitch x:Name="toggleSwitch2" Header="向我推送相關(guān)的動態(tài)" OnContent="On"
OffContent="Off" Toggled="ToggleSwitch_Toggled" IsOn="True"/>
</StackPanel>
<StackPanel Orientation="Vertical" Margin="0,12,0,12">
<Button Content="好評該應(yīng)用唄" Margin="12"/>
<Button Content="清除所有緩存" Margin="12"/>
</StackPanel>
</StackPanel>
先在 app.xaml.cs 中添加下面這條命名空間,和以下 3 個方法
using Windows.UI.ApplicationSettings;
protected override void OnWindowCreated(WindowCreatedEventArgs args)
{
SettingsPane.GetForCurrentView().CommandsRequested += OnCommandsRequested;
}
private void OnCommandsRequested(SettingsPane sender,SettingsPaneCommandsRequestedEventArgs args)
{
args.Request.ApplicationCommands.Add(new SettingsCommand("BigCarMainSettings", "Big Car
的主要設(shè)置", (handler) => ShowCustomSettingFlyout()));
}
public void ShowCustomSettingFlyout()
{
BigCarSettings CustomSettingFlyout = new BigCarSettings();
CustomSettingFlyout.Show();
}
當(dāng)然了,在那些控件中的點(diǎn)擊啥的最后都要在后臺代碼中添加的,就像上一篇博客那樣來保存設(shè)置就好啦。
以上就是關(guān)于應(yīng)用設(shè)置同樣的內(nèi)容咯,而應(yīng)用幫助嘛,和這些都是一樣的呀。創(chuàng)建同樣的目標(biāo)就好了。然后在XAML中修改成自己喜歡的樣子就好啦。而且和應(yīng)用設(shè)置一樣,我們也可以在底部設(shè)置應(yīng)用欄的,關(guān)于應(yīng)用欄的內(nèi)容可以查看第三章的“應(yīng)用欄”一節(jié)。
protected override void OnWindowCreated(WindowCreatedEventArgs args)
{
SettingsPane.GetForCurrentView().CommandsRequested += OnCommandsRequested;
}
private void OnCommandsRequested(SettingsPane sender, SettingsPaneCommandsRequestedEventArgs args)
{
args.Request.ApplicationCommands.Add(new SettingsCommand("BigCarHelp", "Big Car 的幫
助", (handler) => ShowHelpSettingsFlyout()));
}
public void ShowHelpSettingsFlyout()
{
BigCarHelphelpSF = new BigCarHelp();
helpSF.Show();
}
更多建議: