我正在根据MVVM创建一个WPF。在这里,我有一个按钮,我想打开一个FolderBrowserDialog,以便用户可以选择一个文件夹路径。我知道开放对话框是在MVVM方面广泛讨论的内容,因为视图模型中的.ShowDialog是反模式的。因此,经过一些研究,我找到了这篇文章,并回答了,其中公认的答案建议做:
var dlg = new FolderBrowserDialog();
DialogResult result = dlg.ShowDialog();
这会破坏MVVM吗?如果是这样,那么不依赖棱镜等框架的替代方案又是什么呢?
我正尝试在我的WPF应用程序中使用FolderBrowserDialog来指定源和目标文件夹路径。目前,我有一个黑客作为我的解决方案:
// Opens the FolderBrowserDialog and gets the result.
var dialog = new System.Windows.Forms.FolderBrowserDialog();
System.Windows.Forms.DialogResult result = dialog.ShowDialog();
// Updates the TextBox with the chosen folder path.
我有一个文本框(Textbox1),当加载WPF窗口时,它使用UserProfile变量在textbox1.text中显示当前用户目录
Private Sub Window_Loaded(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles MyBase.Loaded
Dim defaultpath As String = Environment.CurrentDirectory
Environment.CurrentDirectory = Environment
如何设置文件夹对话框的根文件夹?
我的样本似乎不起作用。(我检查了文件夹是否存在)
Dim FolderBrowserDialog1 As New FolderBrowserDialog
FolderBrowserDialog1.RootFolder = "C:\VaultWorkspace\cadcampc\"
If (FolderBrowserDialog1.ShowDialog() = DialogResult.OK) Then
Copy_Design_New_Loc.Text = FolderBrowserDialog1.Se
我使用此代码在用户选择的路径中创建子文件夹 FolderBrowserDialog folderBrs = new FolderBrowserDialog();
if (folderBrs.ShowDialog() == DialogResult.OK)
{
System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(folderBrs.SelectedPath;
dir.CreateSubdirectory("subfolder1");
我在我的application.Through中使用了application.Through--我可以设置RootPath,SelectedPath的构造函数。它应该始终以D:\Export\目录作为默认路径打开。如果用户选择了任何其他路径,那么新选择的目录也应该反映在folder.SelectedPath变量上,如果用户关闭了对话框窗口并再次打开它,它应该使用上次选择的文件夹(用户选择的文件夹)打开。它不应该打开默认文件夹(D:\Export)。
public void OpenFolderDialog()
{
FolderBrowserDialog folder = new FolderB
这是我现在得到的..。
FolderBrowserDialog1.ShowDialog()
TextBox1.Text = FolderBrowserDialog1.SelectedPath
If FolderBrowserDialog1.SelectedPath = Nothing = True Then MsgBox("Select your folder..")
If FolderBrowserDialog1.SelectedPath = Nothing = True Then Button1.Enabled = False
If Fol
嗨,我正在努力使用户能够使用FolderBrowserDialog打开一个文件夹,然后将该文件夹设置为路径。我不太清楚我是怎么做到的,以下是我到目前为止是如何做到的:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
InitializeGUI();
}
public void InitializeGUI()
{
int fileCount = Directory.GetFiles(?????,
我正在尝试构建一个Powershell脚本来转换文件夹中的一些音频文件,并且我使用一个FolderBrowserDialog来询问用户输出文件夹的位置,并使用一个OpenFileDialog来获取转换器程序的路径(如果它不在脚本的同一个文件夹中)。这两个对话框都被称为使用独立的函数,这些函数由主程序调用。
问题是,当我从每个函数返回'OpenFileDialog.FileName‘和'FolderBrowserDialog.SelectedPath’时,我得到一个包含路径和其他值的对象,而不是作为字符串的路径本身。
这是我从函数中获得的对象:
这些职能是:
Function
我第一次在WPF中实现FolderBrowserDialog,我一点也不喜欢它.
除了我发现在我的项目中没有引用Windows.Forms之外,现在我很难看到DialogResult返回值是什么。
使用OpenFileDialog,在过去,我曾经这样做过:
OpenFileDialog ofd = new OpenFileDialog();
Nullable<bool> result = ofd.ShowDialog();
if (result == true)
{
// all went well, carry on and do your thing here
}
不