IFolderFilter::ShouldShow 方法 (shobjidl_core.h)
指定是否应允许通过筛选器以及应阻止的单个项。 与 SHBrowseForFolder 一起使用时,指定哪些项应在对话框树视图中显示,哪些项不应显示。 显示或不显示项的确定由应用程序决定。
语法
HRESULT ShouldShow(
[in] IShellFolder *psf,
[in] PCIDLIST_ABSOLUTE pidlFolder,
[in] PCUITEMID_CHILD pidlItem
);
参数
[in] psf
类型: IShellFolder*
指向文件夹的 IShellFolder 接口的指针。
[in] pidlFolder
类型: PCIDLIST_ABSOLUTE
文件夹的 PIDL。
[in] pidlItem
类型: PCUITEMID_CHILD
相关 pidlFolder 子项的相对 PIDL。
返回值
类型: HRESULT
如果应显示项,则返回S_OK;如果不应显示项,则返回S_FALSE;如果遇到错误,则返回标准错误代码。 如果遇到错误,则不显示该项。
注解
主机对 psf 或 pidlFolder 引用的文件夹中的每个项目调用此方法。
建议实现将 psf 和 pidlItem 信息转换为 更易于使用的 IShellItem。 下面的示例对此进行了展示:
STDMETHODIMP ShouldShow(IShellFolder *psf,
PCIDLIST_ABSOLUTE pidlFolder,
PCUITEMID_CHILD pidlItem)
{
IShellItem *psi;
HRESULT hr = SHCreateItemWithParent(NULL, psf, pidlItem, IID_PPV_ARGS(&psi));
if (SUCCEEDED(hr))
{
// Determine here whether the item should be shown. This determination
// is application-dependent.
psi->Release();
}
return hr;
}
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | shobjidl_core.h (包括 Shobjidl.h) |
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈