我想定制类似Vista的
我得到的最接近的结果如下图所示。使用API Code Pack的组合,对Shell进行了一些更改,添加了空标签以进行间隔处理,并使用一些丑陋的COM在OpenFileDialog上直接绘制控件,我已经接近成功了。
这种方法的问题在于我必须在WndProc中禁用重新调整大小,因为
除了我尝试过的方法之外,是否有任何建议或第三方产品可作为标准的类似Vista的OpenFileDialog,但允许插入自定义控件?
OpenFileDialog
,使用自定义WinForms和WPF控件。我知道你可以为XP-like OpenFileDialog创建模板,但那看起来很丑,不符合我的要求。我知道你可以使用Ookii对话框或Microsoft's API Code Pack自定义OpenFileDialog
。这种方法的问题是它们不允许自定义控件,只有一组有限的控件(Label
,TextBox
等)。我得到的最接近的结果如下图所示。使用API Code Pack的组合,对Shell进行了一些更改,添加了空标签以进行间隔处理,并使用一些丑陋的COM在OpenFileDialog上直接绘制控件,我已经接近成功了。
这种方法的问题在于我必须在WndProc中禁用重新调整大小,因为
CommonOpenFileDialog
中的控件部分具有流式/换行布局,如果您在重新调整大小时动态添加/删除控件,则会出现灾难性故障(如果OpenFileDialog已经被显示)。除了我尝试过的方法之外,是否有任何建议或第三方产品可作为标准的类似Vista的OpenFileDialog,但允许插入自定义控件?
[
我也尝试使用 API 代码包中的 ExplorerBrowser(如下图所示)来自行开发,但是尽管对 COM API 进行了详细检查,似乎没有办法在 ExplorerBrowser 中定义筛选器。
[