Aracılığıyla paylaş


NavigationService Sınıf

Tanım

Gezintiyi destekleyen yöntemleri, özellikleri ve olayları içerir.

public ref class NavigationService sealed
public sealed class NavigationService
type NavigationService = class
Public NotInheritable Class NavigationService
Devralma
NavigationService

Açıklamalar

NavigationService tarayıcı stilinde bir gezinti bağlamında içerik indirme özelliğini kapsüller.

İçerik her tür .NET Framework nesnesi ve HTML dosyası olabilir. Ancak genel olarak, gezinti için içerik paketleme yöntemi olarak sayfalar tercih edilir (bkz Page. ).

bir nesne örneği sağlanarak ve bir nesneyi kabul eden yöntemin Navigate aşırı yüklenmesi çağrılarak içeriğe gidilebilir:

Alternatif olarak, bir URI kabul eden yöntem aşırı yüklemelerinden Navigate birine göreli veya mutlak bir URI geçirilerek içeriğe gidilebilir:

İçerik URI tarafından adresine gidildiğinde, NavigationService içeriği içeren bir nesne döndürür.

Gezintinin ömrü aşağıdaki olaylar aracılığıyla izlenebilir:

Her gezinti gerçekleştiğinde tüm olaylar tetiklenmez; oluşan olaylar kümesi, gerçekleşen gezinti türüne (içerik veya içerik parçası) ve gezintinin nasıl tamamlandığına (iptal edildi, durduruldu veya başarısız) göre belirlenir.

Aşağıdaki şekilde, bu olayların tetiklendiği sıra gösterilmektedir:

Sayfa gezintisi akış grafiği

Gezinti sırasında veya sonrasında, NavigationService gidilen içeriğin URI'si ( ), geçerli içeriğin URI'si (CurrentSource ) ve gidilen içeriği içeren bir nesne de dahil olmak üzere, gidilmekteSource olanContent içerik hakkında bilgi sağlar.

İçerik adresine gidildiğinde, NavigationService gezintiyi gezinti geçmişinde girdi olarak kaydeder. Yeni bir gezinti gerçekleştiğinde, yöntemini çağırarak Navigate veya ileriye doğru gezinti geçmişindeki bir girişe gidip çağırarak GoForwardbir girdi arka gezinti geçmişine eklenir. Geri gezinti geçmişindeki bir girişe gidip çağrısı GoBackyaparak gezinti geçmişini iletmeye bir girdi eklenir. CanGoBack ve CanGoForward sırasıyla geri ve ileri gezinti geçmişinde girdi olup olmadığını rapor edin. Ayrıca, geri gezinti geçmişindeki en son girdi çağrılarak RemoveBackEntrykaldırılabilir.

Varsayılan olarak, NavigationService içerik nesnesinin bir örneğini gezinti geçmişinde depolamaz. Bunun yerine, NavigationService gezinti geçmişini kullanarak içerik nesnesinin her gidildiğinde yeni bir örneğini oluşturur. Bu davranış, çok sayıda ve büyük içerik parçalarına gidilirken aşırı bellek tüketimini önlemek için tasarlanmıştır. Sonuç olarak, içeriğin durumu bir gezintiden diğerine anımsanmıyor. Ancak WPF, gezinti geçmişinde bir içerik parçası için durum parçası depolayabileceğiniz çeşitli teknikler sağlar.

kullanarak AddBackEntry, tek bir sayfa örneği için birden çok durum kümesini de anımsayabilirsiniz.

NavigationService bir sealed sınıftır ve bu nedenle örneği oluşturulamaz; bunun yerine NavigationService gezintiyi etkinleştirmek için gezgin tarafından kullanılır. WPF'de iki gezgin vardır: NavigationWindow ve Frame.

Görsel olarak, XBAP'ler tümleşik bir kullanıcı deneyimi sağlamak için Gezgin olarak Internet Explorer'ı kullanır. Ancak fiziksel olarak, XBAP'ler aslında gezgin olarak kullanır NavigationWindow ; MainWindow Internet Explorer'da çalışan bir XBAP'nin özelliği, öğesine bir başvuru NavigationWindowdöndürür ve tarafından NavigationWindow yönetilen gezinti geçmişi, Internet Explorer tarafından yönetilen gezinti geçmişiyle aşağıdaki yollarla tümleştirilir:

  • bir XBAP içinden , GoBackve GoForward çağrılarak Navigateiçeriğe gidildiğinde, ilgili gezinti geçmişi girdileri de Internet Explorer gezinti geçmişine eklenir.
  • Internet Explorer gezinti kullanıcı arabirimindeki girdiler seçildiğinde, Internet Explorer bu girdilerle ilişkili içeriğe geri veya iletilmeye neden olur NavigationService .

Uyarı

, Frame kendi gezinti geçmişini sağlayabilir veya onu barındıran gezginin gezinti geçmişini kullanabilir. Kendi gezinti geçmişini sağlarsa Frame , gezinti geçmişindeki girdilerde gezinmek için kendi gezinti kullanıcı arabirimini görüntüleyebilir; bu girdiler konak gezgininin gezinti geçmişine (NavigationWindow, Frame, tarayıcı) eklenmez ve sonuç olarak, her birinin gezinti kullanıcı arabiriminden gidilemez (bkz JournalOwnership. ).

XBAP desteği hakkında daha fazla bilgi için bkz. WPF tarayıcı tarafından barındırılan uygulamalar (XBAP) hakkında sık sorulan sorular.

Özellikler

Name Description
CanGoBack

Arka gezinti geçmişinde en az bir giriş olup olmadığını gösteren bir değer alır.

CanGoForward

İleri gezinti geçmişinde en az bir giriş olup olmadığını gösteren bir değer alır.

Content

Geçerli içeriği içeren nesneye başvuru alır veya ayarlar.

CurrentSource

En son gidilen içeriğin URI'sini alır.

Source

Geçerli içeriğin URI'sini veya şu anda gidilmekte olan yeni içeriğin URI'sini alır veya ayarlar.

Yöntemler

Name Description
AddBackEntry(CustomContentState)

Nesne içeren arka gezinti geçmişine bir CustomContentState girdi ekler.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetNavigationService(DependencyObject)

İçeriği belirtilen DependencyObjectöğesini içeren gezgin için öğesine başvuru NavigationService alır.

GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
GoBack()

Varsa, geri gezinti geçmişindeki en son girişe gider.

GoForward()

Varsa, ileriye doğru gezinti geçmişinde en son girdiye gidin.

MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
Navigate(Object, Object)

Bir nesnenin içerdiği içeriğe zaman uyumsuz olarak gidin ve gezinti sırasında işlenmek üzere kullanılacak verileri içeren bir nesne geçirin.

Navigate(Object)

Bir nesnenin içerdiği içeriğe zaman uyumsuz olarak gidin.

Navigate(Uri, Object, Boolean)

Bir URI'de bulunan kaynak içeriğe zaman uyumsuz olarak gidin, gezinti sırasında işlenmek üzere gezinti durumu içeren bir nesne geçirin ve içeriği korumalı alana alın.

Navigate(Uri, Object)

Bir URI'de bulunan kaynak içeriğe zaman uyumsuz olarak gidin ve gezinti sırasında işlenmek üzere kullanılacak verileri içeren bir nesne geçirin.

Navigate(Uri)

URI tarafından belirtilen içeriğe zaman uyumsuz olarak gidin.

Refresh()

Geçerli içeriği yeniden yükler.

RemoveBackEntry()

En son günlük girdisini geri geçmişinden kaldırır.

StopLoading()

Geçerli gezinti isteği için içeriğin daha fazla indirilmesini durdurur.

ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)

Ekinlikler

Name Description
FragmentNavigation

bir içerik parçasına gezinti başladığında, istenen parça geçerli içerikteyse veya istenen parça farklı içerikteyse kaynak XAML içeriği yüklendikten sonra hemen gerçekleşir.

LoadCompleted

Gidilen içerik yüklendiğinde, ayrıştırıldığında ve işlemeye başladığında gerçekleşir.

Navigated

Gidilmekte olan içerik bulunduğunda ve özelliğinden Content kullanılabilir olduğunda gerçekleşir, ancak yükleme tamamlanmamış olabilir.

Navigating

Yeni bir gezinti istendiğinde gerçekleşir.

NavigationFailed

İstenen içeriğe giderken bir hata oluştuğunda oluşur.

NavigationProgress

Gezinti ilerleme durumu bilgilerini sağlamak için bir indirme sırasında düzenli aralıklarla gerçekleşir.

NavigationStopped

Yöntem çağrıldığında StopLoading() veya geçerli gezinti devam ederken yeni bir gezinti istendiğinde gerçekleşir.

Şunlara uygulanır