web-dev-qa-db-ja.com

WPFのファイルピッカーダイアログはどこにありますか?

http://i.minus.com/i3xuoWZkpfxHn.png

コンピューターからファイルを選択できるようなものが表示されません。1つある必要があります。どこにありますか?おそらく参照がありませんか?


編集:私が念頭に置いていたのは、横に「参照」ボタンがあるテキストボックスでした。おそらく、私はおそらくテキストボックスと参照ボタンを自分で配置し、ボタンにクリックイベントを追加してダイアログを開く必要があると思います...

43
mpen

[参照]ボタンが横にあるテキストボックスを持つ組み込みコントロールはありません。自分で設定する必要があります。

「ファイルを開く」ダイアログ自体には、 OpenFileDialog in Microsoft.Win32 namespace があります。

53
Adam Lear

より完全な機能の答えを得るには、ボタンBtnFileOpenとテキストボックスTxtFileがあると仮定します。最初に、参照ダイアログからSystem.Windows.Formsアセンブリを参照する必要があります(チェックマークを付けて、ダブルクリックしても追加されないようです)。

ボタンクリックイベント内:

private void BtnFileOpen_Click(object sender, RoutedEventArgs e)
{
    var fileDialog = new System.Windows.Forms.OpenFileDialog();
    var result = fileDialog.ShowDialog();
    switch (result)
    {
        case System.Windows.Forms.DialogResult.OK:
            var file = fileDialog.FileName;
            TxtFile.Text = file;
            TxtFile.ToolTip = file;
            break;
        case System.Windows.Forms.DialogResult.Cancel:
        default:
            TxtFile.Text = null;
            TxtFile.ToolTip = null;
            break;
    }
}

テキストボックスを無効に設定している場合は、xamlを編集して、

ToolTipService.ShowOnDisabled="True"

24
Chris Marisic

通常、System.Windows.Forms名前空間でOpenFileDialogを使用します。 SWFを使用してエイリアスを作成すると、

SWF.OpenFileDialog o = new SWF.OpenFileDialog();
5
joe