以下のコードでは、ファイルを選択するためのドキュメントフォルダは表示されていません。機能は正しく設定されています(私は思います)。そうでない場合、例外がスローされます。ブレークポイントを設定すると、コードがawaitステートメントに到達したことがわかりますが、そこにとどまり、何も起こりません。
Private Async Function Button_Click_1(sender As Object, e As RoutedEventArgs) As Task
If ApplicationView.TryUnsnap = False Then
StatusMessage = "Cannot unsnap."
Exit Function
End If
Dim filePicker As New FileOpenPicker
filePicker.SuggestedStartLocation = PickerLocationId.DocumentsLibrary
filePicker.ViewMode = PickerViewMode.Thumbnail
filePicker.FileTypeFilter.Add(".pbn")
Dim pbnFile = Await filePicker.PickSingleFileAsync
If pbnFile IsNot Nothing Then
StatusMessage = pbnFile.Path
End If
End Function
編集:上記のメソッドの最初の行は次のとおりである必要があります:
If ApplicationView.Value = ApplicationViewState.Snapped AndAlso ApplicationView.TryUnsnap = False Then
そして、問題は解決されました...
XAML:
<Page
x:Class="HandEditor.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:HandEditor"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d">
<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}">
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<Button Click="Button_Click_1">Choose .pbn file</Button>
<TextBlock Grid.Row="1" Text="{Binding StatusMessage}"/>
</Grid>
</Page>