The SearchProvider class
Melakukan pencarian

Daftarkan Penyedia Pencarian

Untuk menambahkan Penyedia Pencarian baru, membuat fungsi dan menandainya dengan atribut SearchItemProvider, seperti dalam contoh berikut:

[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
    };
}
  • Fungsi harus mengembalikan instance SearchProvider baru.
  • Contoh SearchProvider harus memiliki berikut:
  • type yang unik. Sebagai contoh, Asset, Menu, atau SceneA Scene contains the environments and menus of your game. Think of each unique Scene file as a unique level. In each Scene, you place your environments, obstacles, and decorations, essentially designing and building your game in pieces. More info
    See in Glossary
    .
  • A displayName untuk digunakan dalam Filter pane.
  • filterId opsional menyediakan token pencarian untuk penyaringan berbasis teks. Sebagai contoh, p: adalah ID filter untuk Pencarian aset.

Mendaftar shortcut Penyedia Pencarian

Untuk mendaftarkan shortcut untuk penyedia baru, gunakan:

[UsedImplicitly, Shortcut("Help/Quick Search/Assets")]
private static void PopQuickSearch()
{
    // Open Search with only the "Asset" provider enabled.
    QuickSearchTool.OpenWithContextualProvider("asset");
}

Anda dapat memetakan pintasan ke kunci atau kombinasi kunci menggunakan .

The SearchProvider class
Melakukan pencarian