새 검색 공급자를 추가하려면 다음 예제와 같이 함수를 만들고 SearchItemProvider
속성으로 태그를 지정합니다.
[SearchItemProvider]
internal static SearchProvider CreateProvider()
{
return new SearchProvider(type, displayName)
{
filterId = "me:",
fetchItems = (context, items, provider) =>
{
var itemNames = new List<string>();
var shortcuts = new List<string>();
GetMenuInfo(itemNames, shortcuts);
items.AddRange(itemNames.Where(menuName =>
SearchProvider.MatchSearchGroups(context.searchText, menuName))
.Select(menuName => provider.CreateItem(menuName,
Path.GetFileName(menuName), menuName)));
},
fetchThumbnail = (item, context) => Icons.shortcut
};
}
SearchProvider
인스턴스를 반환해야 합니다.SearchProvider
인스턴스에는 다음이 있어야 합니다.type
displayName
.filterId
는 텍스트 기반 필터링에 대한 검색 토큰을 제공합니다. 예를 들어 p:
는 자산 검색의 필터 ID입니다.새 공급자에 대한 단축키를 등록하려면 다음을 사용하십시오.
[UsedImplicitly, Shortcut("Help/Quick Search/Assets")]
private static void PopQuickSearch()
{
// Open Search with only the "Asset" provider enabled.
SearchService.ShowContextual("asset");
}
단축키 관리자에서 키 또는 키 조합을 단축키에 매핑할 수 있습니다.