Navigate File

Button をクリックすると、既定のアプリでファイルを開きます。

前田稔の超初心者のプログラム入門

プログラムの説明

  1. [空白アプリ(ユニバーサル Windows)]からプロジェクトを構築します。
    メニューの[プロジェクト][既存の項目の追加]から c:\data\test\ffx2s.jpg と c:\data\test\utf8.txt を追加します。
    画像や TEXT FILE は、何でも構わないので適当なものを調達して下さい。
  2. MainPage.xaml のデザインで StackPanel を貼り付けてサイズを整えて下さい。
    ツールから Button を4個ダブルクリックで張り付けると StackPanel 内に整列して配置されます。
    Button Click のイベントハンドラを設定して下さい。
        <Grid>
            <StackPanel HorizontalAlignment="Left" Height="123" VerticalAlignment="Top" Width="111">
                <Button x:Name="button" Content="Button" HorizontalAlignment="Stretch"
                    VerticalAlignment="Stretch" Click="Button_Click_1"/>
                <Button x:Name="button1" Content="Button" HorizontalAlignment="Stretch"
                    VerticalAlignment="Stretch" Click="Button_Click_2"/>
                <Button x:Name="button2" Content="Button" HorizontalAlignment="Stretch"
                    VerticalAlignment="Stretch" Click="Button_Click_3"/>
                <Button x:Name="button3" Content="Button" HorizontalAlignment="Stretch"
                    VerticalAlignment="Stretch" Click="Button_Click_4"/>
            </StackPanel>
        </Grid>
    
  3. ボタンクリックのイベントハンドラをコーデイングします。
    Button-1 をクリックすると、既定のアプリが起動されて画像("ffx2s.jpg")が表示されます。
        private async void Button_Click_1(object sender, RoutedEventArgs e)
        {   string imageFile = "ffx2s.jpg";
            var file = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync(imageFile);
            await Windows.System.Launcher.LaunchFileAsync(file);
        }
    
  4. Button-2 をクリックすると、既定のアプリが起動されて "utf8.txt" が表示されます。
        private async void Button_Click_2(object sender, RoutedEventArgs e)
        {   string textFile = "utf8.txt";
            var file = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync(textFile);
            await Windows.System.Launcher.LaunchFileAsync(file);
        }
    
  5. Button-3 をクリックすると、既定のアプリが起動する前にウインドウを切り替えるか否かの応答を求めます。
        private async void Button_Click_3(object sender, RoutedEventArgs e)
        {   string imageFile = "ffx2s.jpg";
            var options = new Windows.System.LauncherOptions();
            options.TreatAsUntrusted = true;
    
            var file = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync(imageFile);
            await Windows.System.Launcher.LaunchFileAsync(file, options);
        }
    
  6. Button-4 をクリックすると、起動するアプリの選択(設定)画面が表示されます。
        private async void Button_Click_4(object sender, RoutedEventArgs e)
        {   string imageFile = "ffx2s.jpg";
            var options = new Windows.System.LauncherOptions();
            options.TreatAsUntrusted = true;
            options.DisplayApplicationPicker = true;
            options.UI.PreferredPlacement = Windows.UI.Popups.Placement.Below;
    
            var file = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync(imageFile);
            await Windows.System.Launcher.LaunchFileAsync(file, options);
        }
    
  7. コンパイル&実行して Button-1 ~ Button-4 をクリックしてみて下さい。

超初心者のプログラム入門(C# Frame Work)