声明文件类型关联,即可以将当前应用程序加入到已有文件类型的"打开方式"列表中,也可以为应用程序声明新的文件类型,当用户单击打开文件时,系统会启动当前应用程序,因此,开发者需要对应用程序的激活事件进行处理。当通过某个文件激活时,通常的处理方案是显示该文件的内容。
下面通过示例来演示如何将应用程序与自定义类型的文件关联。
本示例需要三个应用程序页面:MainPage为主页,用于输入文件的内容,然后将输入的内容保存到文件;FilesPage页面用来显示已经保存的文件列表,当用户单击文件后,会使用当前应用程序来打开文件;当使用当前应用程序打开文件后,将通过DisplayPage页面来显示文件内容。
首先,完成MainPage页面的实现。页面布局XAML如下所示:
<StackPanel Margin="10">
<TextBox x:Name="txtName" Header="姓名:"/>
<TextBox x:Name="txtCity" Header="城市:"/>
<TextBox x:Name="txtAge" Header="年龄:">
<TextBox.InputScope>
<InputScope>
<InputScope.Names>
<InputScopeName NameValue="Number"/>
</InputScope.Names>
</InputScope>
</TextBox.InputScope>
</TextBox>
<Button Content="保存" Margin="0,20,0,0" Tapped="Button_Tapped"/>
<HyperlinkButton Content="浏览文件" Tapped="HyperlinkButton_Tapped"/>
</StackPanel>
用户单击"保存"按钮后将输入的信息保存到文件,文件统一存放到设备的SavedPictures文件夹中。Button的Tapped事件处理程序如下:
private async void Button_Tapped(object sender, TappedRoutedEventArgs e)
{
Button btn = sender as Button;
MessageDialog msgBox = new MessageDialog(