我正在尝试使用Visual Studio中的WPF在C#中创建此程序。这基本上就是它必须做的事情。
当在主窗体上单击一个名为“Browse”的按钮时,它将打开一个新的窗体/窗口,让用户浏览到他选择的任何目录。选择文件夹并单击“打开”(或该表单上的其他按钮)后,该目录的路径(例如“C:\ temp”)将存储在字符串变量中,以便以后使用。
我的第一个问题是,我在“浏览”按钮的偶数处理程序中写了什么,它将打开一个让用户浏览并选择文件夹的窗口?是否有我可以使用的默认窗口,或者我是否需要为其创建新表单?请注意,用户必须选择一个文件夹,而不是默认的“打开”窗口。
其次,如何引用字符串变量以便存储用户选择的目录路径?
答案 0 :(得分:4)
您要查找的类型是OpenFileDialog
http://msdn.microsoft.com/en-us/library/system.windows.forms.openfiledialog.aspx
基本用法如下
using (FileDialog fileDialog = new OpenFileDialog()) {
if (DialogResult.Ok == fileDialog.ShowDialog()) {
string fileName = fileDialog.FileName;
...
}
}
修改强>
评论澄清OP正在寻找打开目录与文件。为此,您需要FolderBrowseDialog
var dialog = new System.Windows.Forms.FolderBrowserDialog();
System.Windows.Forms.DialogResult result = dialog.ShowDialog();
答案 1 :(得分:1)
要选择目录,您应该使用FolderBrowserDialog
。它是来自WinForms的控件。 WPF没有它自己的。
例如:
var dialog = new FolderBrowserDialog();
var result = dialog.ShowDialog();
if (result == DialogResult.OK)
// ...
不要忘记添加对System.Windows.Forms
的引用。
答案 2 :(得分:1)
只需在按钮上单击
即可 FileDialog fileDialog = new OpenFileDialog();
fileDialog.ShowDialog();
folderpathTB.Text = fileDialog.FileName;
(folderpathTB是TextBox的名称,我将wana放入文件路径,或者你也可以将它分配给字符串变量)