我有一个项目,它使用以下代码行为用户提供选择文件位置等的选项。
Win32.SaveFileDialog dialog = new Win32.SaveFileDialog();
使用此但我收到以下错误:
the type or namespace name 'Win32' could not be found (are you missing a using directive or an assembly reference?)
我使用以下"使用指令"在文件的顶部:
using System;
using Microsoft.Win32;
我相信这些都是必需的(实际上,using Microsoft.Win32
可能甚至不需要)。
我有以下项目/汇编(?)参考:
我知道这些问题有一百万个问题但是没有一个问题似乎帮助了我。我尝试重建解决方案,清理它,关闭并打开VS(2013)。不幸的是,我对VS或C#并不是很了解,但我想我认为我尝试了大部分合理的解决方案。
答案 0 :(得分:5)
在项目中删除并再次添加PresentationFramework.dll
引用。
命名空间:Microsoft.Win32
Assembly:PresentationFramework(in PresentationFramework.dll)
MSDN link to SaveFileDialog Class
表示允许用户指定文件名的通用对话框 将文件另存为。应用程序无法使用SaveFileDialog 在部分信任下执行。
答案 1 :(得分:2)
由于您使用Microsoft.Win32
并尝试直接使用Win32
,我相信您还需要添加以下指令才能直接访问Win32
:
using Microsoft;
您需要此指令。
using Microsoft.Win32.SaveFileDialog;
或者可以使用以下代码行来实现相同的功能:
Microsoft.Win32.SaveFileDialog dialog = new Microsoft.Win32.SaveFileDialog();
答案 2 :(得分:0)
使用名称空间System.Windows.Forms
来使用SaveFileDialog
。
答案 3 :(得分:0)
我在VS2015中重新编辑的旧代码遇到了同样的问题。
我刚删除Microsoft.Win32
并只留下SaveFileDialog
(两行:指令和对象创建),它对我有用。