これがあなたのシナリオの1つの解決策です。私の解決策を伝えるための単なる擬似コードであることに注意してください
private bool isLoadingData = false;
private bool newQueryQueued = false;
///code in your itemselectionchanged event handler
if(isLoadingData)
{
newQueryQueued = true;
//Do not execute your query.
}
else
{
//Execute your query and get the result.
//after the query result is completed, execute the following code.
isLoadingData = false;
if(newQueryQueued)
{
isLoadingData = true;
newQueryQueued = false;
//Execute your query and get the result.
}
}
上記の疑似コードでは、クエリは必要な場合にのみ実行されます。最初の実行中に使用が 4 アイテムをタップした場合を言います。前の結果がまだ保留中のため、リソース クエリは実行されません。結果が受信されると、コードはユーザーが選択を変更したかどうかを確認し、選択が変更された場合はクエリを再度実行します。
そして第二部へ
ユーザーが 1 ~ 2 秒間何も言わない場合は、クエリを実行する必要があります。
ページの読み込み時に任意の時間 (1 秒または 2 秒) のタイマーを実装し、最初の時間が経過した後にタイマーを破棄する必要があります。
お役に立てれば