我使用SaveFileDialog
选择要保存文件的路径。我将InitialDirectory
设置为某个文件夹,但我想将保存位置限制为该文件夹或该文件夹的子文件夹。这可能吗?
SaveFileDialog dialog = new SaveFileDialog();
dialog.InitialDirectory = "SomePath"//this is the path that I want to be root folder
答案 0 :(得分:9)
不,这是不可能的。
您无法在SaveFileDialog
上直接将其设为属性。但您可以尝试使用FileOk
事件来验证文件是否在该目录中,否则取消该事件!
dialog.FileOk +=
delegate (object sender, CancelEventArgs e)
{
if (dialog.FileName is in wrong directory)
{
e.Cancel = true;
}
};
如上所述,下一个最佳选择是构建自己的Dialog!
答案 1 :(得分:0)
我想到的一些解决方案是:
文件选择后显示错误
不像首先阻止用户那么好,但它不需要很多代码并且非常简单。
构建您自己的文件选择屏幕
看起来像用户习惯的任何东西都非常痛苦。需要大量代码。
答案 2 :(得分:0)
我能想到的可能是偏离主题的,因为它与编程无关,而且可能很难。
当您正在安装应用程序时,您应该在Windows上为您的应用程序创建一个特定用户。
你可以开始使用App。作为该用户使用App。清单文件。
之后,您可以将该特定用户权限仅授予根文件夹,这是操作系统将如何控制它。
PS:我不认为这个解决方案是否会自行支付,但它可能会有效。
<强>敬礼强>