ベクトルドロー・レベルゼロ+

ホーム > コンピュータ > C# > WPF in C# > ダイアログボックス

オープンファイル・ダイアログボックス

概要

オープンファイル・ダイアログボックスは、ファイル名を取得するためのダイアログボックスです。

サンプルコード

メインウィンドウのボタンを押すと、OpenFileDialogボックスが開きます。 ファイルを選択すると、メインウィンドウにファイル名がフルパスで表示されます。

[xaml]


<Window x:Class="FileOpenDialog.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="150" Width="200">
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="80*"/>
            <RowDefinition Height="40*"/>
        </Grid.RowDefinitions>
        <Button Name="btn0" Grid.Row="0" HorizontalAlignment="Center" VerticalAlignment="Center" 
                Width="170" Height="50" Click="btn0_Click">
            OpenFileDialogを開きます。
        </Button>
        <Label Name="Label01" content="メッセージ" Grid.Row="1" Background="Cornsilk" />

    </Grid>
</Window>
				
メインウィンドウ ダイアログボックス

[xaml.cs]


using System.Windows;

using System.IO;        // ファイル操作で使用する。
using Microsoft.Win32;  // オープンファイル・ダイアログボックスで使用する。


namespace FileOpenDialog
{
    /// <summary>
    /// MainWindow.xaml の相互作用ロジック
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void btn0_Click(object sender, RoutedEventArgs e)
        {
            // イベントで行う処理は、直接記述せず、メソッドにまとめて、そのメソッドを呼び出します。
            msd_OpenFileDialogProcess();
        }

        private void msd_OpenFileDialogProcess()
        {
            // ラベルの内容を消去します。
            Label01.Content = "";
            
            // Configure open file dialog box オープンファイル・ダイアログボックスを設定します。
            OpenFileDialog dlg = new Microsoft.Win32.OpenFileDialog();

            dlg.FileName = "Document"; // Default file name 既定のファイル名
            dlg.DefaultExt = ".txt"; // Default file extension 既定のファイル拡張子
            dlg.Filter = "Text documents (.txt)|*.txt";
            // Filter files by extension 拡張機能によってファイルにフィルターをかけます。

            // Show open file dialog box オープンファイル・ダイアログボックスを表示します。
            bool? result = dlg.ShowDialog();

            // Process open file dialog box results オープンファイル・ダイアログボックスの結果を処理します。
            if (result == true)
            {
                // ファイル名を取得します。
                string filename = dlg.FileName;
                // ラベルにファイル名を表示します。
                Label01.Content = filename;
            }

        }
    }
}
				

参考サイト

動作確認環境

Microsoft Visual Studio Express 2013 for Desktop 64bit
Windows 8.1 pro 64bit
ページトップへ
WPF in C#
C#
ダイアログボックス
Copyright (C) 2011-2016 kukekko All Rights Reserved.
kukekko@gmail.com
ご連絡の際はアドレスの@は半角にしてください。 また、お問い合わせページのURLの明記をお願いします。
「掲載内容は私自身の見解であり、所属する組織を代表するものではありません 」。
inserted by FC2 system