SearchPane.SuggestionsRequested Evento
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Se produce cuando cambia el texto de la consulta del usuario y la aplicación debe proporcionar nuevas sugerencias para mostrarse en el panel de búsqueda.
/// [add: Windows.Foundation.Metadata.Deprecated("ISearchPane may be altered or unavailable for releases after Windows 10.", Windows.Foundation.Metadata.DeprecationType.Deprecate, 65536, Windows.ApplicationModel.Search.SearchContract)]
/// [remove: Windows.Foundation.Metadata.Deprecated("ISearchPane may be altered or unavailable for releases after Windows 10.", Windows.Foundation.Metadata.DeprecationType.Deprecate, 65536, Windows.ApplicationModel.Search.SearchContract)]
// Register
event_token SuggestionsRequested(TypedEventHandler<SearchPane, SearchPaneSuggestionsRequestedEventArgs const&> const& handler) const;
// Revoke with event_token
void SuggestionsRequested(event_token const* cookie) const;
// Revoke with event_revoker
SearchPane::SuggestionsRequested_revoker SuggestionsRequested(auto_revoke_t, TypedEventHandler<SearchPane, SearchPaneSuggestionsRequestedEventArgs const&> const& handler) const;
/// [add: Windows.Foundation.Metadata.Deprecated("ISearchPane may be altered or unavailable for releases after Windows 10.", Windows.Foundation.Metadata.DeprecationType.Deprecate, 65536, "Windows.ApplicationModel.Search.SearchContract")]
/// [remove: Windows.Foundation.Metadata.Deprecated("ISearchPane may be altered or unavailable for releases after Windows 10.", Windows.Foundation.Metadata.DeprecationType.Deprecate, 65536, "Windows.ApplicationModel.Search.SearchContract")]
// Register
event_token SuggestionsRequested(TypedEventHandler<SearchPane, SearchPaneSuggestionsRequestedEventArgs const&> const& handler) const;
// Revoke with event_token
void SuggestionsRequested(event_token const* cookie) const;
// Revoke with event_revoker
SearchPane::SuggestionsRequested_revoker SuggestionsRequested(auto_revoke_t, TypedEventHandler<SearchPane, SearchPaneSuggestionsRequestedEventArgs const&> const& handler) const;
[add: Windows.Foundation.Metadata.Deprecated("ISearchPane may be altered or unavailable for releases after Windows 10.", Windows.Foundation.Metadata.DeprecationType.Deprecate, 65536, typeof(Windows.ApplicationModel.Search.SearchContract))]
[remove: Windows.Foundation.Metadata.Deprecated("ISearchPane may be altered or unavailable for releases after Windows 10.", Windows.Foundation.Metadata.DeprecationType.Deprecate, 65536, typeof(Windows.ApplicationModel.Search.SearchContract))]
public event TypedEventHandler<SearchPane,SearchPaneSuggestionsRequestedEventArgs> SuggestionsRequested;
[add: Windows.Foundation.Metadata.Deprecated("ISearchPane may be altered or unavailable for releases after Windows 10.", Windows.Foundation.Metadata.DeprecationType.Deprecate, 65536, "Windows.ApplicationModel.Search.SearchContract")]
[remove: Windows.Foundation.Metadata.Deprecated("ISearchPane may be altered or unavailable for releases after Windows 10.", Windows.Foundation.Metadata.DeprecationType.Deprecate, 65536, "Windows.ApplicationModel.Search.SearchContract")]
public event TypedEventHandler<SearchPane,SearchPaneSuggestionsRequestedEventArgs> SuggestionsRequested;
function onSuggestionsRequested(eventArgs) { /* Your code */ }
searchPane.addEventListener("suggestionsrequested", onSuggestionsRequested);
searchPane.removeEventListener("suggestionsrequested", onSuggestionsRequested);
- or -
searchPane.onsuggestionsrequested = onSuggestionsRequested;
Public Custom Event SuggestionsRequested As TypedEventHandler(Of SearchPane, SearchPaneSuggestionsRequestedEventArgs)
Tipo de evento
- Atributos
Comentarios
Importante
Para implementar la búsqueda en una aplicación para Windows 10 o posterior, use AutoSuggestBox. Consulta Cuadro de sugerencias automáticas para obtener más información.
No debe usar las API Windows.ApplicationModel.Search (SearchPane, SearchContract
) o SearchBox API en aplicaciones para Windows 10 o posterior.
Nota
Una aplicación no puede usar el cuadro de búsqueda (Windows.UI.Xaml.Controls.SearchBox/WinJS.UI.SearchBox) y searchPane. El uso del cuadro de búsqueda y el panel de búsqueda de la misma aplicación hace que la aplicación produzca una excepción con este mensaje: "No se puede crear una instancia de tipo 'Windows.UI.Xaml.Controls.SearchBox'".
Las sugerencias pueden provenir de tres orígenes: historial de búsqueda, archivos locales o de un origen especificado por la aplicación. Las sugerencias se agrupan por su origen y se muestran en el siguiente orden en el panel de búsqueda: historial de búsqueda, archivos locales y orígenes especificados por la aplicación.
Si la aplicación participa en el contrato de búsqueda y quieres que la aplicación muestre sugerencias de orígenes que especifiques, debes registrar un controlador para responder cuando se active este evento. En el controlador de eventos SuggestionsRequested, responda obteniendo sugerencias y rellenando searchSuggestionCollection en función del searchPaneSuggestionsRequestedEventArgs del usuario. QueryText.
Nota
Si desea responder a este evento de forma asincrónica, debe usar SearchPaneSuggestionsRequestedEventArgs. Solicitud. GetDeferral.
No se pueden proporcionar sugerencias para un cuadro de búsqueda vacío, por lo que este evento no se desencadena cuando el usuario actualiza el cuadro de búsqueda para que esté vacío.
Tipos de sugerencias de búsqueda
Hay dos tipos de sugerencias que la aplicación puede mostrar: sugerencias que ayudan a los usuarios a refinar una consulta (sugerencias de consulta) y sugerencias que son resultados reales de una consulta (sugerencias de resultados). Puede optar por mostrar o ambos tipos de sugerencias.
Si proporciona sugerencias de consulta y el usuario selecciona uno, la aplicación debe responder mostrando los resultados de la consulta seleccionada y refinada en la página de resultados de búsqueda de la aplicación.
Si proporciona sugerencias de resultados, también debe registrar un controlador de eventos ResultSuggestionChosen para que pueda responder cuando el usuario seleccione una de las sugerencias de resultados y pueda mostrar el resultado al usuario.
Obtención de sugerencias
Estos son algunos ejemplos de orígenes que la aplicación puede usar para obtener sugerencias:
- Desde una lista local, estática y definida por la aplicación
- Desde una dirección URL que admite sugerencias en formato OpenSearch
Mostrar sugerencias proporcionadas por la aplicación en el panel de búsqueda
Después de obtener sugerencias, las mostrará en el panel de búsqueda agregándolas a la solicitud. SearchSuggestionCollection.
Como máximo, el panel de búsqueda puede mostrar 5 sugerencias. Si decide mostrar sugerencias de consulta y sugerencias de resultados, debe agrupar las sugerencias por tipo de sugerencia (consulta o resultado) y separar los grupos mediante AppendSearchSeparator. Cada separador tiene lugar de una sugerencia y debe seguir al menos una sugerencia, lo que reduce el número de sugerencias que se pueden mostrar.