寻找一种PInvoke风格的方式来使用System.Windows.Forms.CommonDialog自定义SaveFileDialog

时间:2011-09-27 11:23:25

标签: c# .net winforms

我想编写一个System.Windows.Forms.SaveFileDialog的实现,从System.Windows.Forms.CommonDialog扩展并使用bool RunDialog(IntPtr hwndOwner)方法注册一个custimisation hook。

I used George Mihaescu's 2007 article on extending the print dialog对于类似的用例,我需要在打印对话框中添加控件作为打印的基础,但稍微扩展了示例,我实际上想要使用相同的方法进行保存。

我似乎无法找到有关可用结构和扩展的更多信息,特别是我找不到PRINTDLG结构的等效项。我找到的最接近的是MSDN article on the Common Item Dialog

1 个答案:

答案 0 :(得分:0)

这篇文章详细介绍了如何通过Win32 API扩展公共文件对话框,特别是保存。我在扩展的打开和保存对话框实现中基本上遵循了这个例子。我只是在文件类型组合框下面添加了一个附加文本框。

我的实施是封闭源代码,因此我无法分享。但是,通过Win7(x86或x64)在Win2k上运行此代码没有任何问题。

http://www.codeproject.com/KB/cs/getsavefilename.aspx