寻找一个PInvoke风格的方式来定制使用System.Windows.Forms.CommonDialog的SaveF

本文关键字:System Windows SaveF CommonDialog Forms 方式 一个 寻找 风格 PInvoke | 更新日期: 2023-09-27 18:09:54

我想从System.Windows.Forms.CommonDialog扩展System.Windows.Forms.SaveFileDialog并使用bool RunDialog(IntPtr hwndOwner)方法来注册自定义钩子。

我使用了George Mihaescu 2007年关于扩展打印对话框的文章,用于一个类似的用例,在这个用例中,我需要向打印对话框添加控件,作为打印的基础,但对示例进行了一些扩展,我实际上想使用相同的方法来保存。

我似乎找不到太多关于可用结构和扩展的信息,特别是我找不到PRINTDLG结构的等效。我找到的最接近的是MSDN关于公共项目对话框

寻找一个PInvoke风格的方式来定制使用System.Windows.Forms.CommonDialog的SaveF

的文章

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

我的实现是闭源的,所以我不能分享它。但是,我在Win2k到Win7 (x86或x64)上运行此代码没有问题。

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