Bagikan melalui


FocusManager.TryMoveFocusAsync Metode

Definisi

Overload

TryMoveFocusAsync(FocusNavigationDirection)

Secara asinkron mencoba mengubah fokus dari elemen saat ini dengan fokus ke elemen yang dapat difokuskan berikutnya ke arah yang ditentukan.

TryMoveFocusAsync(FocusNavigationDirection, FindNextElementOptions)

Secara asinkron mencoba mengubah fokus dari elemen saat ini dengan fokus ke elemen yang dapat difokuskan berikutnya ke arah yang ditentukan dan tunduk pada opsi navigasi yang ditentukan.

TryMoveFocusAsync(FocusNavigationDirection)

Secara asinkron mencoba mengubah fokus dari elemen saat ini dengan fokus ke elemen yang dapat difokuskan berikutnya ke arah yang ditentukan.

public:
 static IAsyncOperation<FocusMovementResult ^> ^ TryMoveFocusAsync(FocusNavigationDirection focusNavigationDirection);
/// [Windows.Foundation.Metadata.Overload("TryMoveFocusAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
 static IAsyncOperation<FocusMovementResult> TryMoveFocusAsync(FocusNavigationDirection const& focusNavigationDirection);
[Windows.Foundation.Metadata.Overload("TryMoveFocusAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public static IAsyncOperation<FocusMovementResult> TryMoveFocusAsync(FocusNavigationDirection focusNavigationDirection);
function tryMoveFocusAsync(focusNavigationDirection)
Public Shared Function TryMoveFocusAsync (focusNavigationDirection As FocusNavigationDirection) As IAsyncOperation(Of FocusMovementResult)

Parameter

focusNavigationDirection
FocusNavigationDirection

Arah yang memfokuskan berpindah dari elemen ke elemen dalam UI aplikasi.

Mengembalikan

FocusMovementResult yang menunjukkan apakah fokus berhasil diatur.

Atribut

Persyaratan Windows

Rangkaian perangkat
Windows 10, version 1803 (diperkenalkan dalam 10.0.17134.0)
API contract
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v6.0)

Contoh

Di sini, kami menunjukkan cara mengatur fokus pada objek WebView, dan, jika gagal, pulihkan fokus ke elemen asli.

async void MoveFocus(WebView webView)) 
{ 
    FocusMovementResult result; 
    result = await FocusManager.TryFocusAsync(webView, FocusState.Programmatic); 
    if (!result.Succeeded) 
    { 
        // Restore focus to original element. 
        this.Focus(FocusState.Programmatic); 
    } 
}

Keterangan

TryFocusAsync selesai secara sinkron saat dipanggil pada elemen yang berjalan dalam proses aplikasi.

Anda juga dapat menggunakan metode FindNextElement(FocusNavigationDirection, FindNextElementOptions) atau metode FindNextElement(FocusNavigationDirection) untuk memindahkan fokus secara terprogram. Metode ini mengambil elemen (sebagai DependencyObject) yang akan menerima fokus berdasarkan arah navigasi yang ditentukan (navigasi arah saja, tidak dapat digunakan untuk meniru navigasi tab).

Catatan

Sebaiknya gunakan metode FindNextElement alih-alih FindNextFocusableElement karena FindNextFocusableElement mengambil UIElement, yang mengembalikan null jika elemen yang dapat difokuskan berikutnya bukan UIElement (seperti objek Hyperlink ).

Lihat juga

Berlaku untuk

TryMoveFocusAsync(FocusNavigationDirection, FindNextElementOptions)

Secara asinkron mencoba mengubah fokus dari elemen saat ini dengan fokus ke elemen yang dapat difokuskan berikutnya ke arah yang ditentukan dan tunduk pada opsi navigasi yang ditentukan.

public:
 static IAsyncOperation<FocusMovementResult ^> ^ TryMoveFocusAsync(FocusNavigationDirection focusNavigationDirection, FindNextElementOptions ^ focusNavigationOptions);
/// [Windows.Foundation.Metadata.Overload("TryMoveFocusWithOptionsAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
 static IAsyncOperation<FocusMovementResult> TryMoveFocusAsync(FocusNavigationDirection const& focusNavigationDirection, FindNextElementOptions const& focusNavigationOptions);
[Windows.Foundation.Metadata.Overload("TryMoveFocusWithOptionsAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public static IAsyncOperation<FocusMovementResult> TryMoveFocusAsync(FocusNavigationDirection focusNavigationDirection, FindNextElementOptions focusNavigationOptions);
function tryMoveFocusAsync(focusNavigationDirection, focusNavigationOptions)
Public Shared Function TryMoveFocusAsync (focusNavigationDirection As FocusNavigationDirection, focusNavigationOptions As FindNextElementOptions) As IAsyncOperation(Of FocusMovementResult)

Parameter

focusNavigationDirection
FocusNavigationDirection

Arah yang memfokuskan berpindah dari elemen ke elemen dalam UI aplikasi.

focusNavigationOptions
FindNextElementOptions

Opsi navigasi yang digunakan untuk mengidentifikasi kandidat fokus.

Mengembalikan

FocusMovementResult yang menunjukkan apakah fokus berhasil diatur.

Atribut

Persyaratan Windows

Rangkaian perangkat
Windows 10, version 1803 (diperkenalkan dalam 10.0.17134.0)
API contract
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v6.0)

Contoh

Di sini, kami menunjukkan cara mengatur fokus pada objek WebView, dan, jika gagal, pulihkan fokus ke elemen asli.

async void MoveFocus(WebView webView)) 
{ 
    FocusMovementResult result; 
    result = await FocusManager.TryFocusAsync(webView, FocusState.Programmatic); 
    if (!result.Succeeded) 
    { 
        // Restore focus to original element. 
        this.Focus(FocusState.Programmatic); 
    } 
}

Keterangan

TryFocusAsync selesai secara sinkron saat dipanggil pada elemen yang berjalan dalam proses aplikasi.

Anda juga dapat menggunakan metode FindNextElement(FocusNavigationDirection, FindNextElementOptions) atau metode FindNextElement(FocusNavigationDirection) untuk memindahkan fokus secara terprogram. Metode ini mengambil elemen (sebagai DependencyObject) yang akan menerima fokus berdasarkan arah navigasi yang ditentukan (navigasi arah saja, tidak dapat digunakan untuk meniru navigasi tab).

Catatan

Sebaiknya gunakan metode FindNextElement alih-alih FindNextFocusableElement karena FindNextFocusableElement mengambil UIElement, yang mengembalikan null jika elemen yang dapat difokuskan berikutnya bukan UIElement (seperti objek Hyperlink ).

Lihat juga

Berlaku untuk