Xamarin.Forms ortak denetim özellikleri, Yöntemler ve olaylar
Xamarin.FormsVisualElement Sınıfı, bir uygulamada kullanılan denetimlerin çoğu için temel sınıftır Xamarin.Forms . VisualElementSınıfı, türetilen sınıflarda kullanılan birçok VisualElement, yöntemive olayı tanımlar.
Özellikler
Nesneler üzerinde aşağıdaki özellikler mevcuttur VisualElement .
Xamarin_Forms _VisualElement_AnchorX "Data-LinkType =" Absolute-path ">AnchorX
AnchorXÖzelliği, double ölçek ve döndürme gibi dönüşümler için X ekseninde merkez noktasını tanımlayan bir değerdir. Varsayılan değer 0,5 ' dir.
Xamarin_Forms _VisualElement_AnchorY "Data-LinkType =" Absolute-path ">AnchorY
AnchorYÖzelliği, double ölçek ve döndürme gibi dönüşümler için Y ekseninde merkez noktasını tanımlayan bir değerdir. Varsayılan değer 0,5 ' dir.
Background
BackgroundÖzelliği, Brush fırçaların herhangi bir denetimde arka plan olarak kullanılmasını sağlayan bir değerdir. Brush.Default varsayılan değerdir.
Xamarin_Forms _VisualElement_BackgroundColor "Data-LinkType =" Absolute-path ">BackgroundColor
BackgroundColorÖzelliği, Color denetimin arka plan rengini belirleyen bir özelliğidir. Bu ayar için, arka plan, Color saydam olarak işleyen varsayılan nesne olacaktır.
Xamarin_Forms _VisualElement_Behaviors "Data-LinkType =" Absolute-path ">Behaviors
BehaviorsÖzelliği ListBehavior nesnelerden oluşur. Davranışlar, öğeleri listeye ekleyerek yeniden kullanılabilir işlevselliği eklemenize olanak tanır Behaviors . Sınıfı hakkında daha fazla bilgi için Behavior bkz Xamarin.Forms Behaviors ..
Xamarin_Forms _VisualElement_Bounds "Data-LinkType =" Absolute-path ">Bounds
BoundsÖzelliği, Rectangle denetimin kapladığı alanı temsil eden salt okunurdur bir nesnedir. BoundsÖzellik değeri, düzen çevrimi sırasında atanır. , Rectanglestruct Dikdörtgenlerin kesişimini ve kapsamayı test etmek için yararlı özellikler ve yöntemler içerir. Daha fazla bilgi için bkz. Xamarin.Forms Rectangle API.
Clip
ClipÖzelliği, Geometry bir öğenin içeriklerinin ana hattını tanımlayan bir nesnedir. Bir klibi tanımlamak için, GeometryEllipseGeometry öğesinin özelliğini ayarlamak için gibi bir nesnesi kullanın Clip . Yalnızca geometrinin bölgesi içinde olan alan görünür olur. Daha fazla bilgi için bkz. bir geometriyle klip.
Xamarin_Forms _Element_Effects "Data-LinkType =" Absolute-path ">Effects
EffectsÖzelliği ListEffect sınıfından devralınan nesnelerden oluşur Element . Etkiler yerel denetimlerin özelleştirilme ve genellikle küçük stil oluşturma değişiklikleri için kullanılır. Sınıfı hakkında daha fazla bilgi için Effect bkz Xamarin.Forms Effects ..
Xamarin_Forms _VisualElement_FlowDirection "Data-LinkType =" Absolute-path ">FlowDirection
FlowDirectionÖzelliği bir FlowDirection sabit listesi değeridir. Flow yönü, veya olarak ayarlanabilir MatchParentLeftToRightRightToLeft ve düzen sırasını ve yönünü belirler. FlowDirectionÖzelliği genellikle sağdan sola okuyan dilleri desteklemek için kullanılır.
Xamarin_Forms _VisualElement_Height "Data-LinkType =" Absolute-path ">Height
HeightÖzelliği, double denetimin işlenmiş yüksekliğini açıklayan salt okunurdur. HeightÖzellik, düzen çevrimi sırasında hesaplanır ve doğrudan ayarlanamaz. Bir denetimin yüksekliği, Heightrequest özelliğikullanılarak istenebilir.
Xamarin_Forms _VisualElement_HeightRequest "Data-LinkType =" Absolute-path ">HeightRequest
HeightRequestÖzelliği, double denetimin istenen yüksekliğini belirleyen bir değerdir. Denetimin mutlak yüksekliği istenen değerle eşleşmeyebilir. Daha fazla bilgi için bkz. istek özellikleri.
Xamarin_Forms _VisualElement_InputTransparent "Data-LinkType =" Absolute-path ">InputTransparent
InputTransparentÖzelliği, bool denetimin kullanıcı girdisini alıp almayacağını belirleyen bir ' dır. Varsayılan değer false , öğenin girişi aldığından emin olur. Bu özellik, ayarlandığında alt öğelerine aktarır. InputTransparentÖzelliği true bir düzen sınıfında olarak ayarlamak, düzen içindeki tüm öğelerin giriş almamaya neden olur.
Xamarin_Forms _VisualElement_IsEnabled "Data-LinkType =" Absolute-path ">IsEnabled
IsEnabledÖzelliği, bool denetimin kullanıcı girişi için yeniden görev yapıp görmediğini belirleyen bir değerdir. true varsayılan değerdir. Bu özelliğin false olarak ayarlanması, denetimin kullanıcı girişini kabul etmesini engeller.
Xamarin_Forms _VisualElement_IsFocused "Data-LinkType =" Absolute-path ">IsFocused
IsFocusedÖzelliği, bool denetimin Şu anda odaklanmış nesne olup olmadığını açıklayan bir değerdir. FocusYöntemi denetimde çağırmak, IsFocused değerin true olarak ayarlanmasının oluşmasına neden olur. Yöntemi çağırmak, Unfocus Bu özelliği false olarak ayarlar.
Xamarin_Forms _VisualElement_IsTabStop "Data-LinkType =" Absolute-path ">IsTabStop
IsTabStopÖzelliği, bool Kullanıcı sekme tuşuyla denetimler aracılığıyla ilerlediğini denetimin odağı alıp almadığını tanımlayan bir değerdir. Bu özellik false ise, TabIndex özelliğin etkisi olmayacaktır.
Xamarin_Forms _VisualElement_IsVisible "Data-LinkType =" Absolute-path ">IsVisible
IsVisibleÖzelliği, bool denetimin işlenip işlenmediğini belirleyen bir değerdir. IsVisibleÖzelliği false olarak ayarlanan denetimler gösterilmez, düzen çevrimi sırasında boşluk hesaplamaları için değerlendirilmez ve Kullanıcı girişini kabul edemezler.
Xamarin_Forms _VisualElement_MinimumHeightRequest "Data-LinkType =" Absolute-path ">MinimumHeightRequest
MinimumHeightRequestÖzelliği, double iki öğe sınırlı alan için rekabet edildiğinde taşın nasıl işlendiğini belirleyen bir değerdir. Özelliği ayarlamak, MinimumHeightRequest Düzen işleminin öğeyi, istenen minimum boyuta göre ölçeklendirmesine izin verir. Hayır MinimumHeightRequest belirtilmemişse, varsayılan değer-1 ' dir ve düzen işlemi öğesini HeightRequest En düşük değer olacak şekilde kabul eder. Bu, değer içermeyen öğelerin ölçeklenebilir yüksekliğini olmayacağı anlamına gelir MinimumHeightRequest .
Daha fazla bilgi için bkz. En düşük istek özellikleri.
Xamarin_Forms _VisualElement_MinimumWidthRequest "Data-LinkType =" Absolute-path ">MinimumWidthRequest
MinimumWidthRequestÖzelliği, double iki öğe sınırlı alan için rekabet edildiğinde taşın nasıl işlendiğini belirleyen bir değerdir. Özelliği ayarlamak, MinimumWidthRequest Düzen işleminin öğeyi, istenen minimum boyuta göre ölçeklendirmesine izin verir. Hayır MinimumWidthRequest belirtilmemişse, varsayılan değer-1 ' dir ve düzen işlemi öğesini WidthRequest En düşük değer olacak şekilde kabul eder. Bu, değer içermeyen öğelerin ölçeklenebilir genişliği olmayacağı anlamına gelir MinimumWidthRequest .
Daha fazla bilgi için bkz. En düşük istek özellikleri.
Xamarin_Forms _VisualElement_Opacity "Data-LinkType =" Absolute-path ">Opacity
OpacityÖzelliği, double işleme sırasında denetimin opaklığını belirleyen sıfırdan bir değerdir. Bu özellik için varsayılan değer 1,0 ' dir. 0 ile 1 arasında aralığın dışında kalan değerler çakışacaktır. OpacityÖzelliği yalnızca özelliği ise geçerlidir IsVisibletrue . Opaklık yinelemeli olarak uygulanır. Bu nedenle, bir üst denetimde 0,5 opaklık varsa ve alt öğesi 0,5 opaklık içeriyorsa, alt öğe geçerli bir 0,25 opaklık değeri ile işlenir. OpacityBir giriş denetiminin özelliğinin 0 olarak ayarlanması tanımsız davranışa sahiptir.
Xamarin_Forms _Element_Parent "Data-LinkType =" Absolute-path ">Parent
ParentÖzelliği Element sınıfından devralınır. Bu özellik, Element denetimin üst öğesi olan bir nesnedir. ParentÖzelliği, genellikle başka bir öğenin alt öğesi olarak eklendiğinde bir öğe üzerinde otomatik olarak ayarlanır.
Xamarin_Forms _VisualElement_Resources "Data-LinkType =" Absolute-path ">Resources
ResourcesÖzelliği, ResourceDictionary genellikle xaml 'den çalışma zamanında doldurulan anahtar/değer çiftleri ile doldurulmuş bir örneğidir. Bu sözlük, uygulama geliştiricilerinin hem derleme zamanında hem de çalışma zamanında XAML 'de tanımlanan nesneleri yeniden kullanmasına izin verir. Sözlükteki anahtarlar x:Key xaml etiketinin özniteliğinden doldurulur. XAML 'den oluşturulan nesne, ResourceDictionary belirtilen anahtar için öğesine eklenir. başlatıldıktan sonra.
Daha fazla bilgi için bkz. kaynak sözlükleri.
Xamarin_Forms _VisualElement_Rotation "Data-LinkType =" Absolute-path ">Rotation
RotationÖzelliği, double sıfır ve 360 arasında Z ekseni ile ilgili dönüşü tanımlayan derece cinsinden bir değerdir. Bu özelliğin varsayılan değeri 0 ' dır. Döndürme, ve değerlerine göre AnchorXAnchorY uygulanır.
Xamarin_Forms _VisualElement_RotationX" data-linktype="absolute-path">RotationX
özelliği, X ekseniyle ilgili döndürmeyi derece olarak tanımlayan sıfır ile RotationXdouble 360 arasındaki bir değerdir. Bu özelliğin varsayılan değeri 0'dır. Döndürme, ve değerlerine göre AnchorXAnchorY uygulanır.
Xamarin_Forms _VisualElement_RotationY" data-linktype="absolute-path">RotationY
özelliği, Y ekseniyle ilgili döndürmeyi derece olarak tanımlayan sıfır ile RotationYdouble 360 arasında bir değerdir. Bu özelliğin varsayılan değeri 0'dır. Döndürme, ve değerlerine göre AnchorXAnchorY uygulanır.
Xamarin_Forms _VisualElement_Scale" data-linktype="absolute-path">Scale
Scaleözelliği, double denetimin ölçeğini tanımlayan bir değerdir. Bu özelliğin varsayılan değeri 1.0'dır. Ölçek, ve değerlerine göre AnchorXAnchorY uygulanır.
Xamarin_Forms _VisualElement_ScaleX" data-linktype="absolute-path">ScaleX
özelliği, ScaleXdouble denetimin X ekseni üzerinde ölçeğini tanımlayan bir değerdir. Bu özelliğin varsayılan değeri 1.0'dır. ScaleXözelliği değere göre AnchorX uygulanır.
Xamarin_Forms _VisualElement_ScaleY" data-linktype="absolute-path">ScaleY
özelliği, ScaleYdouble denetimin Y ekseni üzerinde ölçeğini tanımlayan bir değerdir. Bu özelliğin varsayılan değeri 1.0'dır. ScaleYözelliği değere göre AnchorY uygulanır.
Xamarin_Forms _NavigableElement_Style" data-linktype="absolute-path">Style
Styleözelliği sınıfından NavigableElement devralınır. Bu özellik, sınıfının bir Style örneğidir. sınıfı, görsel öğelerin görünümünü ve davranışını tanımlayan tetikleyicileri, Style ayarları ve davranışları içerir. Daha fazla bilgi için bkz. Xamarin.Forms XAML Styles.
Xamarin_Forms _NavigableElement_StyleClass" data-linktype="absolute-path">StyleClass
StyleClassözelliği, sınıfların adlarını string temsil eden nesnelerin Style listesidir. Bu özellik sınıfından NavigableElement devralınır. özelliği, StyleClass bir örneğine birden çok stil özniteliğinin uygulanmasına olanak VisualElement sağlar. Daha fazla bilgi için bkz. Xamarin.Forms Style Classes.
Xamarin_Forms _VisualElement_TabIndex" data-linktype="absolute-path">TabIndex
özelliği, TabIndex sekme int tuşuyla denetimler arasında ilerlerken denetim sıralamayı tanımlayan bir değerdir. TabIndexözelliği, sınıfının uygulayan arabiriminde ITabStopElement tanımlanan özelliğin VisualElement uygulamasıdır.
Xamarin_Forms _VisualElement_TranslationX" data-linktype="absolute-path">TranslationX
özelliği, TranslationXdouble X eksenine uygulanacak delta çevirisini tanımlayan bir değerdir. Çeviri düzenden sonra uygulanır ve genellikle animasyon uygulamak için kullanılır. Bir öğeyi üst kapsayıcısı sınırları dışında çevirip girişlerin çalışmaması.
Daha fazla bilgi için bkz. Animation in Xamarin.Forms.
Xamarin_Forms _VisualElement_TranslationY" data-linktype="absolute-path">TranslationY
özelliği, TranslationYdouble Y eksenine uygulanacak delta çevirisini tanımlayan bir değerdir. Çeviri düzenden sonra uygulanır ve genellikle animasyon uygulamak için kullanılır. Bir öğeyi üst kapsayıcısı sınırları dışında çevirip girişlerin çalışmaması.
Daha fazla bilgi için bkz. Animation in Xamarin.Forms.
Xamarin_Forms _VisualElement_Triggers" data-linktype="absolute-path">Triggers
Triggersözelliği nesnelerin salt okunur bir ListTriggerBase özelliğidir. Tetikleyiciler, uygulama geliştiricilerinin XAML'de olay veya özellik değişikliklerine yanıt olarak denetimlerin görsel görünümünü değiştirecek eylemleri ifade etmelerini sağlar. Daha fazla bilgi için bkz. Xamarin.Forms Triggers.
Xamarin_Forms _VisualElement_Visual" data-linktype="absolute-path">Visual
özelliği, VisualIVisual işleyicilerin oluşturularak örneklere seçmeli olarak uygulanmasına olanak sağlayan bir VisualElement örnektir. özelliği üst öğesiyle eşılacak şekilde ayarlanır, bu nedenle bir bileşen üzerinde bir işleyici tanımlamak o bileşenin Visual tüm alt bileşenleri için de geçerli olur. Bir denetimde veya üst bilgilerde özel işleyici ayarlanmayacaksa varsayılan Xamarin.Forms işleyici kullanılır. Daha fazla bilgi için bkz. Xamarin.Forms Visual.
Xamarin_Forms _VisualElement_Width" data-linktype="absolute-path">Width
Widthözelliği, denetimin işlenmiş double genişliğini açıklayan salt okunur bir değerdir. özelliği Width düzen döngüsü sırasında hesaplanır ve doğrudan ayarlanmaz. Denetimin genişliği WidthRequest özelliği kullanılarak talep edilebilir.
Xamarin_Forms _VisualElement_WidthRequest" data-linktype="absolute-path">WidthRequest
WidthRequestözelliği, double denetimin istenen genişliğini belirleyen bir değerdir. Denetimin mutlak genişliği istenen değerle eşleşmez. Daha fazla bilgi için bkz. İstek özellikleri.
Xamarin_Forms _VisualElement_X" data-linktype="absolute-path">X
özelliği, X denetimin geçerli double X konumunu açıklayan salt okunur bir değerdir.
Xamarin_Forms _VisualElement_Y" data-linktype="absolute-path">Y
özelliği, Y denetimin geçerli double Y konumunu açıklayan salt okunur bir değerdir.
Yöntemler
Sınıfında aşağıdaki yöntemler VisualElement kullanılabilir. Tam liste için bkz. VisualElement API Yöntemleri.
FindByName
yöntemi FindByName sınıfından Element devralınır ve aşağıdaki imzaya sahip olur:
public object FindByName (string name)
Bu yöntem, sağlanan bağımsız değişken için tüm name alt öğeleri arar ve belirtilen adı olan öğeyi döndürür. Eşleşme bulunamıyorsa null döndürülür.
Xamarin_Forms _VisualElement_Focus" data-linktype="absolute-path">Focus
yöntemi, Focus öğesine odaklanmayı dener. Bu yöntem aşağıdaki imzaya sahip:
public bool Focus ()
Focusyöntemi, true klavye odağı başarıyla ayarlanmışsa ve false yöntem çağrısı odak değişikliğine neden yoksa döndürür. Bu yöntemin çalışması için öğenin odağında olması gerekir. Ekran Focus dışı veya gerçek dışı olan öğelerde yönteminin çağrılma davranışı tanımlanmamıştır.
Xamarin_Forms _VisualElement_Unfocus" data-linktype="absolute-path">Unfocus
yöntemi, Unfocus öğesine odağı kaldırmaya çalışır. Bu yöntem aşağıdaki imzaya sahip:
public void Unfocus ()
Bu yöntemin çalışması için öğenin odağı zaten olması gerekir.
Ekinlikler
Sınıfında aşağıdaki olaylar VisualElement kullanılabilir. Tam liste için Xamarin.Forms VisualElement Events bkz. .
Focused
Olay, Focused örnek odak aldığında ortaya VisualElement çıkar. Bu olay yığında kabarcıklı Xamarin.Forms değildir, doğrudan yerel denetimden alınmıştır. Bu olay özellik ayarlayıcı IsFocused tarafından yayılıyor.
SizeChanged
Olay, SizeChanged örnek veya özellikler her VisualElementHeight değişse ortaya Width çıkar. Geliştiriciler, değişiklik sonrası olaya yanıt vermek yerine boyut değişikliğine doğrudan yanıt vermek isteyen geliştiricilerin bunun yerine sanal yöntemi OnSizeAllocated uygulaması gerekir.
Unfocused
Olay, Unfocused örnek odağı her VisualElement kaybettiğinde ortaya çıkar. Bu olay yığında kabarcıklı Xamarin.Forms değildir, doğrudan yerel denetimden alınmıştır. Bu olay özellik ayarlayıcı IsFocused tarafından yayılıyor.
Ölçü Birimleri
Android, iOS ve UWP platformlarının hepsinde farklı cihazlara göre değişiklik gösterebiliyor farklı ölçüm birimleri vardır. Xamarin.Forms , cihazlar ve platformlar genelinde birimleri normalleştiren platformdan bağımsız bir ölçüm birimi kullanır. içinde inç başına 160 birim veya santimetre başına 64 birim Xamarin.Forms vardır.
İstek özellikleri
Adları "istek" içeren özellikler, istenen değeri tanımlar ve bu değer gerçek işlenen değerle eşleşmez. Örneğin, 150 olarak ayarlanmış olabilir, ancak düzen yalnızca 100 birim için yer izin verirse, denetimin işlenen sayısı HeightRequestHeight yalnızca 100 olur. İşlenen boyut kullanılabilir alandan ve içerdiği bileşenlerden etkilenir.
En düşük istek özellikleri
Minimum istek özellikleri ve ve öğelerini içerir ve öğelerinin birbirine göre taşma MinimumHeightRequestMinimumWidthRequest işlemesi üzerinde daha kesin bir denetim sağlamak için tasarlanmıştır. Ancak bu özelliklerle ilgili düzen davranışında dikkat edilmesi gereken bazı önemli noktalar vardır.
Belirtilmeyen minimum özellik değerleri
Minimum değer ayarlanmazsa, minimum özellik varsayılan olarak -1'i kullanır. Düzen işlemi bu değeri yok sayar ve mutlak değeri en düşük değer olarak kabul ediyor. Bu davranışın pratik sonucu, minimum değer belirtilmemiş bir öğenin küçülmeme olmasıdır. Belirtilen minimum değere sahip bir öğe küçülür.
Aşağıdaki XAML, yatay BoxView bir içinde iki öğe StackLayout gösterir:
<StackLayout Orientation="Horizontal">
<BoxView HeightRequest="100" BackgroundColor="Purple" WidthRequest="500"></BoxView>
<BoxView HeightRequest="100" BackgroundColor="Green" WidthRequest="500" MinimumWidthRequest="250"></BoxView>
</StackLayout>
İlk BoxView örnek 500 genişlik isteği yapar ve minimum genişlik belirtmez. İkinci örnek 500 genişlik ve en BoxView az 250 genişlik talep ediyor. Üst öğe, istenen genişlikte her iki bileşeni de içerecek kadar geniş değilse, başka geçerli bir minimum belirtilmediliği nedeniyle ilk örnek düzen işlemi tarafından en az StackLayout 500 genişliğine sahip olarak kabul BoxView edilir. İkinci örneğin ölçeğinin 250'ye inmesine izin verilir ve genişliği 250 birim olana kadar BoxView sığacak şekilde küçülür.
İstenen davranış, ilk örneğin en düşük genişlikle ölçeğin aşağıya doğru ölçeklendirilene kadar olması ise, örneğin 0 geçerli BoxViewMinimumWidthRequest bir değere ayar olmalıdır.
Minimum ve mutlak özellik değerleri
Minimum değer mutlak değerden büyük olduğunda davranış tanımsız olur. Örneğin, WidthRequest 100 olarak ayarlanırsa MinimumWidthRequest özelliğin asla 100'i aşması gerekir. Minimum özellik değeri belirtirken, mutlak değerin minimum değerden büyük olduğundan emin olmak için her zaman mutlak bir değer belirtmeniz gerekir.
Kılavuz içindeki minimum özellikler
Grid düzenlerinin, satırların ve sütunların göreli boyutlandırması için kendi sistemleri vardır. Bir MinimumWidthRequest düzen içinde veya MinimumHeightRequestGrid kullanmanın bir etkisi olmaz. Daha fazla bilgi için bkz. Xamarin.Forms Grid.