SearchSuggestionManager.SuggestionsRequested 이벤트

정의

사용자의 쿼리 텍스트가 변경되고 앱이 검색 상자에 표시할 새 제안을 제공해야 할 때 발생합니다.

// Register
event_token SuggestionsRequested(TypedEventHandler<SearchSuggestionManager, SearchSuggestionsRequestedEventArgs const&> const& handler) const;

// Revoke with event_token
void SuggestionsRequested(event_token const* cookie) const;

// Revoke with event_revoker
SearchSuggestionManager::SuggestionsRequested_revoker SuggestionsRequested(auto_revoke_t, TypedEventHandler<SearchSuggestionManager, SearchSuggestionsRequestedEventArgs const&> const& handler) const;
public event TypedEventHandler<SearchSuggestionManager,SearchSuggestionsRequestedEventArgs> SuggestionsRequested;
function onSuggestionsRequested(eventArgs) { /* Your code */ }
searchSuggestionManager.addEventListener("suggestionsrequested", onSuggestionsRequested);
searchSuggestionManager.removeEventListener("suggestionsrequested", onSuggestionsRequested);
- or -
searchSuggestionManager.onsuggestionsrequested = onSuggestionsRequested;
Public Custom Event SuggestionsRequested As TypedEventHandler(Of SearchSuggestionManager, SearchSuggestionsRequestedEventArgs) 

이벤트 유형

설명

제안은 검색 기록, 로컬 파일 또는 앱에서 지정한 원본의 세 가지 원본에서 올 수 있습니다. 제안은 원본별로 그룹화되고 검색 창에서 검색 기록, 로컬 파일 및 앱 지정 원본 순서로 표시됩니다.

앱이 검색 계약에 참여하고 지정한 원본의 제안을 앱에 표시하려는 경우 이 이벤트가 발생할 때 응답할 처리기를 등록해야 합니다. SuggestionsRequested 이벤트 처리기에서 제안을 가져오고 사용자의 QueryText에 따라 SearchSuggestionCollection을 채워 응답합니다.

참고

이 이벤트에 비동기적으로 응답하려면 Request 속성에서 지연을 가져와야 합니다.

빈 검색 상자에 대한 제안을 제공할 수 없으므로 사용자가 검색 상자를 비워 두도록 업데이트할 때 이 이벤트가 발생하지 않습니다.

검색 제안 유형

앱에서 표시할 수 있는 제안 유형에는 사용자가 쿼리를 구체화하는 데 도움이 되는 제안(쿼리 제안) 및 쿼리의 실제 결과인 제안(결과 제안)의 두 가지 유형이 있습니다. 제안 유형 중 하나 또는 둘 다를 표시하도록 선택할 수 있습니다.

쿼리 제안을 제공하고 사용자가 쿼리 제안을 선택하면 앱의 검색 결과 페이지에 선택한 구체화된 쿼리에 대한 결과를 표시하여 앱이 응답해야 합니다.

결과 제안을 제공하는 경우 사용자가 결과 제안 중 하나를 선택하고 결과를 사용자에게 표시할 때 응답할 수 있도록 ResultSuggestionChosen 이벤트 처리기도 등록해야 합니다.

제안 가져오기

다음은 앱이 제안을 가져오는 데 사용할 수 있는 소스의 몇 가지 예입니다.

  • 앱 정의 정적 로컬 목록에서
  • OpenSearch 형식의 제안을 지원하는 URL에서

검색 상자 컨트롤에 앱 제공 제안 표시

제안을 얻은 후에는 요청SearchSuggestionCollection에 추가하여 검색 창에 표시합니다.

쿼리 제안과 결과 제안을 모두 표시하도록 선택하는 경우 제안 유형을 따라 제안을 그룹화하고(쿼리 또는 결과) AppendSearchSeparator를 사용하여 그룹을 구분해야 합니다. 각 구분 기호는 제안을 대신하고 하나 이상의 제안 뒤에 표시할 수 있는 제안 수를 줄여야 합니다.

적용 대상

추가 정보