Aracılığıyla paylaş


Xamarin.Forms ortak denetim özellikleri, yöntemleri ve olayları

Xamarin.FormsVisualElement sınıfı, bir Xamarin.Forms uygulamada kullanılan denetimlerin çoğu için temel sınıftır. sınıfıVisualElement, türetilen sınıflarda kullanılan birçok özelliği, yöntemi ve olayı tanımlar.

Properties

Nesnelerde VisualElement aşağıdaki özellikler kullanılabilir.

AnchorX

AnchorX özelliği, ölçek ve döndürme gibi dönüşümler için X ekseninde merkez noktasını tanımlayan bir double değerdir. Varsayılan değer 0,5'tir.

AnchorY

AnchorY özelliği, ölçek ve döndürme gibi dönüşümler için Y ekseninde merkez noktasını tanımlayan bir double değerdir. Varsayılan değer 0,5'tir.

Background

Background özelliği, fırçaların herhangi bir denetimde arka plan olarak kullanılmasını sağlayan bir Brush değerdir. Varsayılan değer şudur: Brush.Default.

BackgroundColor

BackgroundColor özelliği, denetimin arka plan rengini belirleyen bir Color özelliğidir. Ayar kaldırılırsa, arka plan saydam olarak işlenen varsayılan Color nesne olur.

Behaviors

Behaviors özelliği nesnelerden oluşan bir List özelliktirBehavior. Davranışlar, öğeleri listeye ekleyerek yeniden kullanılabilir işlevler eklemenize Behaviors olanak tanır. Sınıfı hakkında Behavior daha fazla bilgi için bkz Xamarin.Forms . Davranışlar.

Bounds

Bounds özelliği, denetimin kapladığı alanı temsil eden salt Rectangle okunur bir nesnedir. Özellik Bounds değeri, düzen döngüsü sırasında atanır. , Rectanglestruct dikdörtgenlerin kesişimini ve kapsamasını test etme için yararlı özellikler ve yöntemler içerir. Daha fazla bilgi için bkz Xamarin.Forms . Rectangle API.

Clip

Clip özelliği, bir Geometry öğenin içeriğinin ana hattını tanımlayan bir nesnedir. Küçük resim tanımlamak için öğesinin Clip özelliğini ayarlamak için gibi EllipseGeometry bir Geometry nesne kullanın. Yalnızca geometrinin bölgesinde yer alan alan görünür. Daha fazla bilgi için bkz . Geometri ile kırpma.

Effects

Effects özelliği, sınıfından devralınan Effect nesnelerin bir List öğesidirElement. Efektler, yerel denetimlerin özelleştirilmesine olanak sağlar ve genellikle küçük stil değişiklikleri için kullanılır. Sınıfı hakkında Effect daha fazla bilgi için bkz Xamarin.Forms . Efektler.

FlowDirection

FlowDirection özelliği bir FlowDirection sabit listesi değeridir. Akış yönü , LeftToRightveya RightToLeft olarak ayarlanabilir MatchParentve 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.

Height

Height özelliği, denetimin işlenmiş yüksekliğini açıklayan salt okunur double bir değerdir. Height Özellik, düzen döngüsü sırasında hesaplanır ve doğrudan ayarlanamaz. HeightRequest özelliği kullanılarak denetimin yüksekliği istenebilir.

HeightRequest

HeightRequest özelliği, denetimin istenen yüksekliğini belirleyen bir double değerdir. Denetimin mutlak yüksekliği istenen değerle eşleşmeyebilir. Daha fazla bilgi için bkz . İstek özellikleri.

InputTransparent

InputTransparent özelliği, denetimin kullanıcı girişi alıp almadığını belirleyen bir bool özelliktir. Varsayılan değer, öğesinin giriş aldığından emin olarak şeklindedir false. Bu özellik ayarlandığında alt öğelere aktarır. özelliğinin InputTransparent bir düzen sınıfında olarak true ayarlanması, düzendeki tüm öğelerin giriş almamasıyla sonuçlanır.

IsEnabled

IsEnabled özelliği, denetimin kullanıcı girişine tepki verip vermediğini belirleyen bir bool değerdir. Varsayılan değer şudur: true. Bu özelliği false olarak ayarlamak, denetimin kullanıcı girişini kabul etmesini engeller.

IsFocused

IsFocused özelliği, denetimin şu anda odaklanmış nesne olup olmadığını açıklayan bir bool değerdir. denetimde Focus yönteminin çağrılması, değerin true olarak ayarlanmasına IsFocused neden olur. yöntemi çağrılırsa Unfocus bu özellik false olarak ayarlanır.

IsTabStop

IsTabStop özelliği, kullanıcı sekme tuşuyla denetimler arasında ilerlerken denetimin odağı alıp almadığını tanımlayan bir bool değerdir. Bu özellik false ise özelliğin TabIndex hiçbir etkisi olmaz.

IsVisible

IsVisible özelliği, denetimin işlenip işlenmediğini belirleyen bir bool değerdir. IsVisible özelliği false olarak ayarlanmış denetimler görüntülenmez, düzen döngüsü sırasında alan hesaplamaları için dikkate alınmaz ve kullanıcı girişini kabul etmez.

MinimumHeightRequest

MinimumHeightRequest özelliği, iki öğe sınırlı alan için rekabet ederken taşma işleminin nasıl işleneceğini belirleyen bir double değerdir. özelliğinin MinimumHeightRequest ayarlanması, düzen işleminin öğeyi istenen en düşük boyuta kadar ölçeklendirmesine olanak tanır. Belirtilmezse MinimumHeightRequest , varsayılan değer -1'dir ve düzen işlemi en düşük değer olarak kabul HeightRequest eder. Bu, değeri olmayan MinimumHeightRequest öğelerin ölçeklenebilir yüksekliğe sahip olmayacağı anlamına gelir.

Daha fazla bilgi için bkz . En düşük istek özellikleri.

MinimumWidthRequest

MinimumWidthRequest özelliği, iki öğe sınırlı alan için rekabet ederken taşma işleminin nasıl işleneceğini belirleyen bir double değerdir. özelliğinin MinimumWidthRequest ayarlanması, düzen işleminin öğeyi istenen en düşük boyuta kadar ölçeklendirmesine olanak tanır. Belirtilmezse MinimumWidthRequest , varsayılan değer -1'dir ve düzen işlemi en düşük değer olarak kabul WidthRequest eder. Bu, değeri olmayan MinimumWidthRequest öğelerin ölçeklenebilir genişliğe sahip olmayacağı anlamına gelir.

Daha fazla bilgi için bkz . En düşük istek özellikleri.

Opacity

Opacity özelliği, işleme sırasında denetimin opaklığını belirleyen sıfırdan bire kadar olan bir double değerdir. Bu özelliğin varsayılan değeri 1.0'dır. 0 ile 1 arasında aralığın dışındaki değerler sıkıştırılır. Opacity özelliği yalnızca özelliği ise IsVisibletrueuygulanır. Opaklık yinelemeli olarak uygulanır. Bu nedenle, bir üst denetimin 0,5 opaklığı varsa ve alt öğesi 0,5 opaklığa sahipse, alt öğe etkin bir 0,25 opaklık değeriyle işlenir. Giriş denetiminin Opacity özelliğini 0 olarak ayarlamak tanımsız bir davranışa sahiptir.

Parent

Parent özelliği sınıfından devralınırElement. Bu özellik, denetimin üst öğesi olan bir Element nesnedir. Parent özelliği genellikle başka bir öğenin alt öğesi olarak eklendiğinde bir öğede otomatik olarak ayarlanır.

Resources

Resources özelliği, genellikle XAML'den çalışma zamanında doldurulan anahtar/değer çiftleriyle doldurulmuş bir ResourceDictionary örnektir. 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 olanak tanır. Sözlükteki anahtarlar XAML etiketinin x:Key özniteliğinden doldurulur. XAML'den oluşturulan nesne, belirtilen anahtar için öğesine ResourceDictionary eklenir. başlatıldıktan sonra.

Daha fazla bilgi için bkz . Kaynak Sözlükleri.

Rotation

Rotation özelliği, Z ekseni hakkındaki döndürmeyi derece cinsinden tanımlayan sıfır ile 360 arasında bir double değerdir. Bu özelliğin varsayılan değeri 0'dır. Döndürme, ve AnchorY değerlerine AnchorX göre uygulanır.

RotationX

RotationX özelliği, X ekseninin döndürmesini derece cinsinden tanımlayan sıfır ile 360 arasında bir double değerdir. Bu özelliğin varsayılan değeri 0'dır. Döndürme, ve AnchorY değerlerine AnchorX göre uygulanır.

RotationY

özelliği, RotationY Y ekseniyle ilgili döndürmeyi derece cinsinden tanımlayan sıfır ile 360 arasında bir double değerdir. Bu özelliğin varsayılan değeri 0'dır. Döndürme, ve AnchorY değerlerine AnchorX göre uygulanır.

Scale

Scale özelliği, denetimin ölçeğini tanımlayan bir double değerdir. Bu özelliğin varsayılan değeri 1.0'dır. Ölçek, ve AnchorY değerlerine AnchorX göre uygulanır.

ScaleX

ScaleX özelliği, denetimin X ekseni boyunca ölçeğini tanımlayan bir double değerdir. Bu özelliğin varsayılan değeri 1.0'dır. ScaleX özelliği değere AnchorX göre uygulanır.

ScaleY

ScaleY özelliği, denetimin Y ekseni boyunca ölçeğini tanımlayan bir double değerdir. Bu özelliğin varsayılan değeri 1.0'dır. ScaleY özelliği değere AnchorY göre uygulanır.

Style

Style özelliği sınıfından devralınırNavigableElement. Bu özellik sınıfının bir örneğidir Style . Style sınıfı, görsel öğelerin görünümünü ve davranışını tanımlayan tetikleyiciler, ayarlayıcılar ve davranışlar içerir. Daha fazla bilgi için bkz Xamarin.Forms . XAML Stilleri.

StyleClass

StyleClass özelliği, sınıfların string adlarını temsil eden nesnelerin listesidirStyle. Bu özellik sınıfından devralınır NavigableElement . özelliği, StyleClass bir VisualElement örneğe birden çok stil özniteliğinin uygulanmasına izin verir. Daha fazla bilgi için bkz Xamarin.Forms . Stil Sınıfları.

TabIndex

TabIndex özelliği, sekme tuşuyla denetimler arasında ilerlerken denetim sırasını tanımlayan bir int değerdir. TabIndex özelliği, sınıfı tarafından uygulanan arabiriminde ITabStopElement tanımlanan özelliğin VisualElement uygulamasıdır.

TranslationX

TranslationX özelliği, X eksenine uygulanacak delta çevirisini tanımlayan bir double değerdir. Çeviri, düzenden sonra uygulanır ve genellikle animasyonları uygulamak için kullanılır. Bir öğenin üst kapsayıcısının sınırları dışında çevrilmesi girişlerin çalışmasını engelleyebilir.

Daha fazla bilgi için bkz . içinde Xamarin.Formsanimasyon.

TranslationY

TranslationY özelliği, Y eksenine uygulanacak delta çevirisini tanımlayan bir double değerdir. Çeviri, düzenden sonra uygulanır ve genellikle animasyonları uygulamak için kullanılır. Bir öğenin üst kapsayıcısının sınırları dışında çevrilmesi girişlerin çalışmasını engelleyebilir.

Daha fazla bilgi için bkz . içinde Xamarin.Formsanimasyon.

Triggers

Triggers özelliği nesnelerin salt List okunur bir özelliğidirTriggerBase. Tetikleyiciler, uygulama geliştiricilerinin olay veya özellik değişikliklerine yanıt olarak denetimlerin görsel görünümünü değiştiren eylemleri XAML'de ifade etmelerine olanak sağlar. Daha fazla bilgi için bkz Xamarin.Forms . Tetikleyiciler.

Visual

Visual özelliği, işleyicilerin oluşturulmasını ve örneklere seçmeli olarak uygulanmasını VisualElement sağlayan bir IVisual örnektir. Visual özelliği üst öğesiyle eşleşecek şekilde ayarlanır, bu nedenle bir bileşende işleyici tanımlamak bu bileşenin tüm alt öğeleri için de geçerli olur. Bir denetimde veya onun üst öğelerinde hiçbir özel işleyici ayarlanmadıysa, varsayılan Xamarin.Forms işleyici kullanılır. Daha fazla bilgi için bkz Xamarin.Forms . Görsel.

Width

Width özelliği, denetimin işlenen genişliğini açıklayan salt double okunur bir değerdir. Width Özellik, düzen döngüsü sırasında hesaplanır ve doğrudan ayarlanamaz. WidthRequest özelliği kullanılarak bir denetimin genişliği istenebilir.

WidthRequest

WidthRequest özelliği, denetimin istenen genişliğini belirleyen bir double değerdir. Denetimin mutlak genişliği istenen değerle eşleşmeyebilir. Daha fazla bilgi için bkz . İstek özellikleri.

X

X özelliği, denetimin geçerli X konumunu açıklayan salt double okunur bir değerdir.

Y

Y özelliği, denetimin geçerli Y konumunu açıklayan salt double okunur bir değerdir.

Yöntemler

Aşağıdaki yöntemler sınıfında kullanılabilir VisualElement . Tam liste için bkz . VisualElement API Yöntemleri.

FindByName

FindByName yöntemi sınıfından devralınır Element ve aşağıdaki imzaya sahiptir:

public object FindByName (string name)

Bu yöntem, sağlanan name bağımsız değişken için tüm alt öğeleri arar ve belirtilen ada sahip öğeyi döndürür. Eşleşme bulunmazsa, null döndürülür.

Focus

Focus yöntemi, öğeye odaklanmayı dener. Bu yöntem aşağıdaki imzaya sahiptir:

public bool Focus ()

Yöntemi, Focus klavye odağı başarıyla ayarlandıysa ve false yöntem çağrısı odak değişikliğine neden olmadıysa döndürürtrue. Bu yöntemin çalışması için öğesinin odağı alabilmesi gerekir. Focus Yönteminin ekrandan uzak veya gerçekleştirilmemiş öğelerde çağrılması tanımsız bir davranışa sahiptir.

Unfocus

Unfocus yöntemi, öğesinde odağı kaldırmaya çalışır. Bu yöntem aşağıdaki imzaya sahiptir:

public void Unfocus ()

Bu yöntemin çalışması için öğenin zaten odağı olmalıdır.

Ekinlikler

Aşağıdaki olaylar sınıfında VisualElement kullanılabilir. Tam liste için bkz Xamarin.Forms . VisualElement Olayları.

Focused

Olay Focused , örnek her odak aldığında oluşturulur VisualElement . Bu olay yığında Xamarin.Forms kabarcıklı değildir, doğrudan yerel denetimden alınır. Bu olay özellik ayarlayıcısı tarafından IsFocused yayılır.

SizeChanged

OlaySizeChanged, örnek Height veya Width özellikler değiştiğinde VisualElement oluşturulur. Geliştiriciler değişiklik sonrası olayına yanıt vermek yerine boyut değişikliğine doğrudan yanıt vermek isterse, bunun yerine sanal yöntemi uygulamalıdır OnSizeAllocated .

Unfocused

Olay Unfocused , örnek odağı kaybettiğinde VisualElement oluşturulur. Bu olay yığında Xamarin.Forms kabarcıklı değildir, doğrudan yerel denetimden alınır. Bu olay özellik ayarlayıcısı tarafından IsFocused yayılır.

Ölçü Birimleri

Android, iOS ve UWP platformlarının tümü cihazlar arasında farklılık gösterebilen farklı ölçü birimlerine sahiptir. Xamarin.Forms cihazlar ve platformlar arasında birimleri normalleştiren platformdan bağımsız bir ölçü birimi kullanır. içinde inç başına 160 birim veya santimetre Xamarin.Formsbaşına 64 birim vardır.

İstek özellikleri

Adları "istek" içeren özellikler, gerçek işlenen değerle eşleşmeyen istenen bir değer tanımlar. Örneğin, HeightRequest 150 olarak ayarlanabilir, ancak düzen yalnızca 100 birim için yer açmasına izin veriyorsa, denetimin işlenmesi Height yalnızca 100 olur. İşlenen boyut kullanılabilir alandan ve kapsanan bileşenlerden etkilenir.

En düşük istek özellikleri

En düşük istek özellikleri ve MinimumWidthRequestöğelerini içerir MinimumHeightRequest ve öğelerin taşma işlemlerini birbirine göre nasıl işlediği üzerinde daha hassas 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.

Belirtilmemiş en düşük özellik değerleri

En düşük değer ayarlanmadıysa, minimum özellik varsayılan olarak -1 olur. Düzen işlemi bu değeri yoksayar ve mutlak değeri en düşük olarak kabul eder. Bu davranışın pratik sonucu, minimum değeri belirtilmeyen bir öğenin küçülmemesidir . Belirtilen en düşük değere sahip bir öğe küçülür .

Aşağıdaki XAML yatayda StackLayoutiki BoxView öğeyi 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ğinde bulunur ve minimum genişlik belirtmez. İkinci BoxView örnek 500 genişlik ve en az 250 genişlik istemektedir. Üst StackLayout öğe istenen genişlikte her iki bileşeni de içerecek kadar geniş değilse, başka geçerli bir minimum belirtilmediğinden, ilk BoxView örnek düzen işlemi tarafından en az 500 genişliğe sahip olarak kabul edilir. İkinci BoxView örneğin ölçeği 250'ye düşürülür ve genişliği 250 üniteye ulaşana kadar sığacak şekilde küçülür.

İstenen davranış, ilk BoxView örneğin minimum genişlik olmadan ölçeği azaltması içinse, değerinin MinimumWidthRequest 0 gibi geçerli bir değere ayarlanması gerekir.

Minimum ve mutlak özellik değerleri

En düşük değer mutlak değerden büyük olduğunda davranış tanımlanmamıştır. Örneğin, 100 olarak ayarlanırsa WidthRequest özellik MinimumWidthRequest hiçbir zaman 100'ü aşmamalıdır. En düşük özellik değerini 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 en düşük özellikler

Grid düzenlerin, satırların ve sütunların göreli olarak boyutlandırılması için kendi sistemleri vardır. Bir düzenin içinde Grid veya MinimumHeightRequest kullanmanın MinimumWidthRequest bir etkisi olmaz. Daha fazla bilgi için bkz Xamarin.Forms . Kılavuz.