Aracılığıyla paylaş


ControlAdapter Sınıf

Tanım

Bağdaştırıcının bağlı olduğu türetilmiş denetim için işlemeyi özelleştirerek belirli tarayıcıların varsayılan işaretlemesini veya davranışını değiştirir ve tüm denetim bağdaştırıcılarının devraldığı temel sınıftır.

public ref class ControlAdapter abstract
public abstract class ControlAdapter
type ControlAdapter = class
Public MustInherit Class ControlAdapter
Devralma
ControlAdapter
Türetilmiş

Açıklamalar

Denetim bağdaştırıcıları, tarayıcıya veya işaretlemeye özgü işlemeye izin vermek için yürütme yaşam döngüsündeki belirli Control sınıf yöntemlerini ve olaylarını geçersiz kılan bileşenlerdir. .NET Framework, tek bir türetilmiş denetim bağdaştırıcısını her istemci isteği için bir Control nesneye eşler.

Bağdaştırıcı, belirli bir tarayıcının veya tarayıcı sınıfının denetimini değiştirir veya bazı özelliklerde rastgele bir filtre işlevi görür. Bağdaştırıcı genellikle tarayıcının kullandığı işaretleme diliyle tanımlanır (örneğin, XHTML veya HTML 3.2). İşleme davranışındaki uyarlanabilirliğin çoğu, sınıfından türetilen HtmlTextWriter özel sınıflarda kapsüllenebilir. Bu nedenle, bir dizi tarayıcı sınıfı davranışı için tek bir bağdaştırıcının kullanılabilmesi veya uyarlanabilirliğin HtmlTextWriter sınıflara eklenmesi, bir denetim bağdaştırıcısının kullanılmasını gereksiz hale getirebilir.

Bir denetim sınıfı için bağdaştırıcı, daha özel bağdaştırıcılar olmadığı sürece, bu sınıftan devralan tüm denetimler için geçerlidir. Örneğin, sınıfı için BaseValidator bir bağdaştırıcı tüm Validator nesneler için kullanılabilir.

Bağdaştırıcılar genellikle doğrudan sınıfından ControlAdapter değil, denetim türüne ve hedef tarayıcıya veya gerekli işlemeye özgü ek işlevler sağlayan hedefe özgü bağdaştırıcı temel sınıflarından birinden devralır.

Denetimlerin kendileri için mutlaka bir bağdaştırıcı gerekmez. Denetimler oluşturma yoluyla genişletilirse, genellikle alt denetim bağdaştırıcıları yeterlidir.

Her denetimin .browser tanım dosyaları aracılığıyla bağdaştırıcılara açık eşlemeleri vardır. Bu nedenle, özelliğine Control.Adapter herhangi bir erişim, tarayıcı tanım dosyalarından ayıklanan nesneyi kullanarak HttpBrowserCapabilities bağdaştırıcının denetlenecek eşlemesi için arama gerçekleştirir.

İşleme sırasında .NET Framework, hedefe özgü olabilecek bir denetimin geçersiz kılınabilir yöntemlerine çağrıları durdurur. Bir denetim bağdaştırıcısı takılıysa, .NET Framework ilişkili bağdaştırıcı yöntemlerini çağırır.

Bağdaştırıcı, yöntemi aracılığıyla Render denetim için işleme gerçekleştirir. Geçersiz kılınırsa, Render yönteminde bir geri Control.Render çağrı gerçekleştirdiğinden temel sınıf uygulamasını çağırmamalıdır. Bu, işlemenin bir kez bağdaştırıcı ve bir kez denetim tarafından gerçekleşmesine neden olabilir.

Render Temel yöntem, denetimin yöntemine Control.Render geri çağrı yapar. Bu nedenle, geçersiz kılarsanız Render, uyguladığınız işleme denetimin sağladığı Control.Render işlemeye ek olmadığı sürece temel sınıf uygulamasını çağırmamalısınız.

.NET Framework'ün alt denetimlerin bağdaştırıcıları için kesme işlemi gerçekleştirdiğinden emin olmanız gerekir. Bunu, denetimin RenderChildren yöntemini çağıran temel yöntemi geçersiz kılmanızdan Render çağırarak Control.RenderChildren yapabilirsiniz.

BeginRender ve EndRender yöntemleri, denetimin hemen önce ve sonra (sırasıyla) yöntemini çağırdığı denetim tarafından çağrılırRender. Ön ve son işleme gereken tek tarayıcıya özgü işleme görevleriyse, kullanarak BeginRender ve EndRender geçersiz kılmayı Rendergereksiz hale getirebilir. ve yöntemlerinin BeginRender varsayılan davranışı, karşılık gelen yöntemlerini çağırmaktırHtmlTextWriter.EndRender

Bir denetim bağdaştırıcısı, kendi durum bilgilerini korumak için , LoadAdapterControlState, SaveAdapterViewStateve LoadAdapterViewState yöntemlerini geçersiz kılabilirSaveAdapterControlState. SaveAdapterControlState, SaveAdapterViewState, LoadAdapterControlStateve LoadAdapterViewState özel denetim ve görünüm durumları sırasıyla kaydedildiğinde ve yüklendiğinde çağrılır.

OnInit, OnLoad, OnPreRenderve OnUnload temel yöntemleri, karşılık gelen Control sınıf yöntemlerini geri çağırır. Bu nedenle, geçersiz kılınan bu ControlAdapter yöntemlerden herhangi birinin temel yöntemlerini çağırması gerekir; aksi takdirde, sınıf yöntemiyle Control ilişkili olay tetiklenmez.

Denetimler ve bağdaştırıcılar isteğe bağlı olarak ve IPostBackEventHandler arabirimlerini uygularIPostBackDataHandler. .NET Framework, bir bağdaştırıcının var olup olmadığını ve bağdaştırıcının bu arabirimleri uygulayıp uygulamadığını belirler. Bunu yaparsa, bağdaştırıcı , ve RaisePostBackEvent yöntemlerini gerektiği gibi geçersiz kılmalıdır.LoadPostDataRaisePostDataChangedEvent Geri gönderme verileri bağdaştırıcıda tanınmıyorsa, işlemek için denetimi geri çağırması gerekir. Sonraki olay işleyicileri de denetimi geri çağırmalıdır.

Uygulayanlara Notlar

sınıfından ControlAdapter devraldığınızda, genel bağdaştırıcı işlevselliği gerektiren bir denetimin, desende ControlTypeAdapter adlı karşılık gelen bir bağdaştırıcı temel sınıfı olmalıdır (örneğin, TextBoxAdapter). Bağdaştırıcı, özelliği aracılığıyla Control denetimin kesin olarak belirlenmiş bir örneğini en azından döndürmelidir.

  1. Belirli bir denetim türü ve işaretleme dili için denetim bağdaştırıcıları desende MarkupControlTypeAdapter adlandırılmalıdır (örneğin, XhtmlTextBoxAdapter). Denetim bağdaştırıcıları bir Adapters alt ad alanına uygulanmalıdır.

Denetim bağdaştırıcıları uygun temel sınıftan devralmalı ve denetimle aynı devralma modelini izlemelidir. Örneğin, temel sınıftan devralan bir denetimin Control bağdaştırıcısı, sınıfından ControlAdapter veya ilgili ControlTypeAdapter sınıftan devralmalıdır.

Yapılandırma .browser dosyalarındaki tüm cihaz düğümleri altında özelleştirilmiş denetim için tüm özel bağdaştırıcılar tanımlanmalıdır.

Düzgün uygulanan bir denetim, bir bağdaştırıcının bağlı olduğunu veya bağlı bağdaştırıcının belirli bir arabirim uyguladığını varsaymamalıdır. Bunun yerine, aramadan önce bunları denetlemesi gerekir.

denetiminde, yöntemi LinkButtongibi korumalı olay yöntemlerini geçersiz kılma benzetimi OnClick(EventArgs) yapmak mümkündür. İlk olarak, bir yöntemle bir OnClick bağdaştırıcı sınıfı oluşturun. Ardından yönteminden LinkButton türetilen yeni bir denetim oluşturun ve yöntemini geçersiz kılın OnClick(EventArgs) . Geçersiz kılınan OnClick(EventArgs) yöntem, bağdaştırıcının OnClick yöntemini çağırır. Bağdaştırıcı nesnesi, sınıfın korumalı Adapter özelliği Control aracılığıyla kullanılabilir. Adapter Denetimin özelliği, ilişkili bir bağdaştırıcı olmadığındadırnull, bu nedenle bağdaştırıcının yöntemlerini çağırmadan önce herhangi bir kod bu koşulu denetlemelidir.

Oluşturucular

Name Description
ControlAdapter()

ControlAdapter sınıfının yeni bir örneğini başlatır.

Özellikler

Name Description
Browser

Geçerli HTTP isteğini yapan istemcinin tarayıcı özelliklerine başvuru alır.

Control

Bu denetim bağdaştırıcısının bağlı olduğu denetime başvuru alır.

Page

Bu bağdaştırıcıyla ilişkili denetimin bulunduğu sayfaya başvuru alır.

PageAdapter

İlişkili denetimin bulunduğu sayfanın sayfa bağdaştırıcısına başvuru alır.

Yöntemler

Name Description
BeginRender(HtmlTextWriter)

Denetimin işlenmesinden önce çağrılır. Türetilmiş bir bağdaştırıcı sınıfında, belirli bir hedef için gerekli olan ancak HTML tarayıcıları için gerekli olmayan açma etiketleri oluşturur.

CreateChildControls()

Bileşik denetim için hedefe özgü alt denetimleri oluşturur.

EndRender(HtmlTextWriter)

Denetimin işlenmesinden sonra çağrılır. Türetilmiş bir bağdaştırıcı sınıfında, belirli bir hedef için gerekli olan ancak HTML tarayıcıları için gerekli olmayan kapanış etiketleri oluşturur.

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)
GetType()

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

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

Önceki bir istek sırasında tarafından SaveAdapterControlState() kaydedilen bağdaştırıcı denetim durumu bilgilerini, bu denetim bağdaştırıcısıyla ilişkili denetimin bulunduğu sayfaya yükler.

LoadAdapterViewState(Object)

Önceki bir istek sırasında tarafından SaveAdapterViewState() kaydedilen bağdaştırıcı görünüm durumu bilgilerini, bu denetim bağdaştırıcısıyla ilişkili denetimin bulunduğu sayfaya yükler.

MemberwiseClone()

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

(Devralındığı yer: Object)
OnInit(EventArgs)

OnInit(EventArgs) İlişkili denetim için yöntemini geçersiz kılar.

OnLoad(EventArgs)

OnLoad(EventArgs) İlişkili denetim için yöntemini geçersiz kılar.

OnPreRender(EventArgs)

OnPreRender(EventArgs) İlişkili denetim için yöntemini geçersiz kılar.

OnUnload(EventArgs)

OnUnload(EventArgs) İlişkili denetim için yöntemini geçersiz kılar.

Render(HtmlTextWriter)

Denetim bağdaştırıcısının bağlı olduğu denetim için hedefe özgü işaretlemeyi oluşturur.

RenderChildren(HtmlTextWriter)

Denetim bağdaştırıcısının bağlı olduğu bileşik denetimde alt denetimler için hedefe özgü işaretleme oluşturur.

SaveAdapterControlState()

Denetim bağdaştırıcısı için denetim durumu bilgilerini kaydeder.

SaveAdapterViewState()

Denetim bağdaştırıcısı için görünüm durumu bilgilerini kaydeder.

ToString()

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

(Devralındığı yer: Object)

Şunlara uygulanır

Ayrıca bkz.