C# Open/SaveFileDialog类之间的差异及其在WPF表单中的使用
很好奇,但我只是想知道是否有人知道使用: System.Windows.Forms.SaveFileDialog(在Assembly System.Windows.Forms.dll中)和Microsoft.Win32.SaveFileDialog(在Assembly PresentationFramework.dll中) 我在WPF表单中使用PresentationFramework.dll版本,但目前正在表单中重新使用一些旧代码,其中包括显示System.Windows.Forms.dll版本,并想知道是否:C# Open/SaveFileDialog类之间的差异及其在WPF表单中的使用,c#,.net,wpf,winforms,visual-studio-2010,C#,.net,Wpf,Winforms,Visual Studio 2010,很好奇,但我只是想知道是否有人知道使用: System.Windows.Forms.SaveFileDialog(在Assembly System.Windows.Forms.dll中)和Microsoft.Win32.SaveFileDialog(在Assembly PresentationFramework.dll中) 我在WPF表单中使用PresentationFramework.dll版本,但目前正在表单中重新使用一些旧代码,其中包括显示System.Windows.Forms.dll版
提前感谢。这里有一个更好的解释(可能已经过时/与.NET的更高版本无关):
虽然它们基本上做相同的事情…但它们是不同的包装器…围绕WIN32功能
- (请参见为什么要使用Win32版本?)
SaveFileDialog
的WPF(Microsoft.Win32
)版本中存在许多潜在的错误
注意:使用Windows.Forms one会给应用程序增加一个额外的DLL。谢谢-这非常有用。到目前为止,我在我的WPF表单中发现使用这两种类型没有问题,我也不需要担心Vista,所以看起来我对大多数问题都免疫。我真的建议使用Windows API代码包。尝试一下它的功能。(例如,TaskDialog。为什么WPF的MessageBox.Show与Windows Vista/7/8相比如此难看?)?