Işleyici
.NET Çok Platformlu Uygulama Kullanıcı Arabirimi (.NET MAUI), verileri görüntülemek, eylemleri başlatmak, etkinliği göstermek, koleksiyonları görüntülemek, veri seçmek ve daha fazlasını yapmak için kullanılabilecek platformlar arası denetimlerden oluşan bir koleksiyon sağlar. Her denetimin, denetimi soyutlayan bir arabirim gösterimi vardır. Bu arabirimleri kullanan platformlar arası kontroller, sanal görünümlerolarak bilinir. UIButton
ile eşler. Android'de, Button bir MaterialButton
olarak eşlenir.
.NET MAUI işleyicilerine, Buttoniçin IButton
gibi denetime özgü arabirimleri aracılığıyla erişilir. Bu, platformlar arası denetimin işleyicisine başvurmasını ve işleyicinin platformlar arası denetime başvurmasını önler.
Her işleyici sınıfı, PlatformView
özelliği aracılığıyla platformlar arası denetim için yerel görünümü kullanıma sunar. Bu özelliğe yerel görünüm özelliklerini ayarlamak, yerel görünüm yöntemlerini çağırmak ve yerel görünüm olaylarına abone olmak için erişilebilir. Ayrıca, işleyici tarafından uygulanan platformlar arası denetim, VirtualView
özelliği aracılığıyla kullanıma sunulur.
Uygulaması her platformda yerel görünümler tarafından sağlanan bir platformlar arası denetim oluşturduğunuzda, platformlar arası denetim API'sini yerel görünüm API'lerine eşleyen bir işleyici uygulamanız gerekir. Daha fazla bilgi için bkz. işleyicilerle özel denetimler oluşturma.
Ayrıca, denetimin API'si aracılığıyla mümkün olan özelleştirmenin ötesinde mevcut platformlar arası denetimlerin görünümünü ve davranışını artırmak için işleyicileri özelleştirebilirsiniz. Bu işleyici özelleştirmesi, platformlar arası denetimin yerel görünümlerini değiştirir. İşleyiciler geneldir ve bir denetim için işleyiciyi özelleştirmek, uygulamanızda aynı türdeki tüm denetimlerin özelleştirilmesine neden olur. Daha fazla bilgi için bkz.işleyicilerle .NET MAUI denetimlerini özelleştirme
Haritacılar
.NET MAUI işleyicilerinin temel kavramlarından biri eşleyicilerdir. Her işleyici genelliklebir
özellik eşleyici, platformlar arası denetimde bir özellik değişikliği gerçekleştiğinde hangi Eylemlerin gerçekleştireceğini tanımlar. Platformlar arası kontrolün özelliklerini, bunların ilişkili Eylemleriyle eşleştiren bir Dictionary
. Ardından her platform işleyicisi, yerel görünüm API'sini işleyen Eylemlerin uygulamalarını sağlar. Bu, bir özellik platformlar arası denetimde ayarlandığında temel alınan yerel görünümün gerektiği gibi güncelleştirilmesini sağlar.
komut eşleyici, platformlar arası denetim komutları yerel görünümlere gönderdiğinde hangi Eylemlerin gerçekleştireceklerini tanımlar. Bunlar özellik haritalayıcılarına benzer, ancak ek verilerin aktarılmasına izin verir. Bu bağlamdaki bir komut, ICommand uygulaması anlamına gelmez. Bunun yerine, komut yalnızca bir yönergedir ve isteğe bağlı olarak verileri yerel görünüme gönderilir. Komut eşleyicisi, platformlar arası denetimin komutunu ilişkili Eylemleriyle eşleyen bir Dictionary
. Ardından her işleyici, yerel görünüm API'sini işleyen Eylemlerin uygulamalarını sağlar. Bu, platformlar arası denetim yerel görünümüne bir komut gönderdiğinde yerel görünümün gerektiği gibi güncelleştirilmesini sağlar. Örneğin, bir ScrollView kaydırıldığında, ScrollViewHandler
kaydırma konumu bağımsız değişkenini kabul eden bir Eylem çağırmak için bir komut eşleyicisi kullanır. Daha sonra Eylem, temel alınan yerel görünüme bu konuma kaydırmasını emreder.
Yerel görünümleri güncelleştirmek için
İşleyici yaşam döngüsü
tüm işleyici tabanlı .NET MAUI denetimleri iki işleyici yaşam döngüsü olayını destekler:
-
HandlerChanging
, platformlar arası denetim için yeni bir işleyici oluşturulmak üzereyken ve mevcut bir işleyici platformlar arası denetimden kaldırılacakken oluşturulur. Bu olaya eşlik edenHandlerChangingEventArgs
nesnesi,IElementHandler
türündeNewHandler
veOldHandler
özelliklerine sahiptir.NewHandler
özelliğinull
olmadığında, olay platformlar arası denetim için yeni bir işleyicinin oluşturulmak üzere olduğunu gösterir.OldHandler
özelliğinull
olmadığında, olay mevcut yerel denetimin platformlar arası denetimden kaldırılmak üzere olduğunu gösterir, bu nedenle tüm yerel olayların bağlantısının kesilmesi ve diğer temizleme işlemlerin gerçekleştirilmesi gerekir. -
HandlerChanged
, platformlar arası bir kontrol için işleyici oluşturulduktan sonra tetiklenir. Bu olay, platformlar arası denetimi uygulayan yerel denetimin kullanılabilir olduğunu ve platformlar arası denetimde ayarlanan tüm özellik değerlerinin yerel denetime uygulandığını gösterir.
Not
HandlerChanging
olayı, HandlerChanged
olayından önce platformlar arası bir kontrolde oluşturulur.
Bu olaylara ek olarak, her platformlar arası denetimin HandlerChanging
olayı tetiklendiğinde çağrılan geçersiz kılınabilir bir OnHandlerChanging
yöntemi ve HandlerChanged
olayı tetiklendiğinde çağrılan bir OnHandlerChanged
yöntemi de vardır.
İşleyicileri görüntüleme
Aşağıdaki tabloda .NET MAUI'de görünümleri uygulayan türler listelenmiştir:
Sayfa işleyicileri
Aşağıdaki tabloda .NET MAUI'de sayfaları uygulayan türler listelenmiştir:
Sayfa | Android İşleyicisi | iOS/Mac Catalyst İşleyicisi | Windows Yöneticisi | Özellik Eşleyicisi | Komut Eşleyicisi |
---|---|---|---|---|---|
ContentPage | PageHandler | PageHandler | PageHandler | Mapper | CommandMapper |
FlyoutPage | FlyoutViewHandler | PhoneFlyoutPageRenderer | FlyoutViewHandler | Mapper |
CommandMapper |
NavigationPage | NavigationViewHandler | NavigationRenderer | NavigationViewHandler | Mapper |
CommandMapper |
TabbedPage | TabbedViewHandler | TabbedRenderer | TabbedViewHandler | Mapper |
CommandMapper |
Shell | ShellHandler |
ShellRenderer | ShellRenderer | Mapper |
CommandMapper |