首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >禁用部分SaveFileDialog

禁用部分SaveFileDialog
EN

Stack Overflow用户
提问于 2009-08-14 09:21:21
回答 3查看 2.8K关注 0票数 1

我正在构建一个需要使用SaveFileDialog的应用程序。问题是我想限制用户使用SaveFileDialog的某些部分(例如,我不想让他们编辑文件的名称)。我听说使用Windows forms SaveAsDialog很难做到这一点。你知道如何在原生代码中做到这一点吗?你有完整的不可理解的例子吗(我需要完整的例子,因为我从来没有用过Windows API)?

PS。我真的需要使用SaveFileDialog来保持UI的一致性。

EN

回答 3

Stack Overflow用户

发布于 2009-08-14 09:31:20

如果文件名是固定的,并且用户只能导航到另一个位置,则只需使用FolderBrowserDialog即可。IMHO,这也是一致的。

票数 5
EN

Stack Overflow用户

发布于 2009-08-14 09:43:36

如果您真的想要使用通用的保存文件对话框,但又想使文件名成为只读的,那么您可能需要调用本机代码。您可以使用钩子提供许多定制。您将不得不学习一些Windows API:

Customizing Common Dialog Boxes

Open and Save As Dialog Boxes

GetSaveFileName Function (Using GetSaveFileName from managed code)

OPENFILENAME Structure (Using OPENFILENAME from managed code)

我已经很久没有做老式的Windows API了,所以下面的想法就是:一个想法。也许你可以创建一个钩子,在WM_INITDIALOG中你可以找到带有文件名的编辑控件。它似乎被命名为edt1。也许您可以修改该控件的窗口样式,使其成为只读的。

但也许这里提供的其他一些答案是比修改另存为对话框更好的选择。

票数 4
EN

Stack Overflow用户

发布于 2009-08-14 09:27:35

从头开始创建您自己的Savefiledialog

只需创建一个看起来与Savefiledialog几乎相同的表单,但名称为Label,而不是TextBox

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1276890

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档