c# - 使用 MahApp.Metro 主题自定义 SaveFileDialog

标签 c# wpf material-design mahapps.metro savefiledialog

我想使用与当前窗口相同的主题来自定义SaveFileDialog

我正在使用 MahApps.MetroMaterialDesign,但我没有找到更改对话框边框的方法...我不想添加东西,我只想自定义按钮的颜色,窗口的颜色等...

有人知道怎么做吗?

最佳答案

简单的答案是这是不可能的。

诸如OpenFileDialogSaveFileDialog之类的对话框正在使用.NET中的 native 操作系统对话框。这意味着与 Windows 10 相比,该对话框在 Windows XP 上的外观和行为会有所不同。由于它们不是托管表单,因此您不能强制它们使用您想要的库。

如果您确实想使用 Metro 主题,您可能需要在 WPF 中创建自己的对话框实现。然而,我真的不会走这条路,因为它很容易出错,而使用操作系统的标准实现是最好的选择。

这里 ( Extend OpenFileDialog and SaveFileDialog Using WPF ) 有关如何使用 WPF 扩展现有系统对话框的更多信息。您很快就会注意到, Hook 到底层 Win32 API 是一项乏味的工作,但仍然没有给您带来太多灵活性。

关于c# - 使用 MahApp.Metro 主题自定义 SaveFileDialog,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39445302/

相关文章:

c# - 如何通过 .NET 执行 Minitab 命令?

C#表面2数据源

wpf - 如何将 WPF TreeView HierarchicalDataTemplate 与 LINQ to Entities 一起使用?

android MaterialDialog 未关闭

c# - .NET 多维数组打印

c# - 将 url 从 utf-8 编码重新编码为 iso-8859-1 编码

WPF XAML 动画(新手)

javascript - 更改默认文本颜色 Material UI

安卓 Material 设计动画

c# - 在 XAML 中重用路径对象