WindowChrome Sınıf

Tanım

Bir pencerenin istemci olmayan alanında yapılan özelleştirmeleri açıklayan bir nesneyi temsil eder.

public ref class WindowChrome : System::Windows::Freezable
public class WindowChrome : System.Windows.Freezable
type WindowChrome = class
    inherit Freezable
Public Class WindowChrome
Inherits Freezable
Devralma

Açıklamalar

sınıfı, WindowChrome Windows Presentation Foundation (WPF) içeriğini genellikle işletim sisteminin pencere yöneticisi için ayrılmış bir pencerenin istemci olmayan alanına genişletmenize olanak tanır.

Standart Windows

Standart pencereler iki örtüşen dikdörtgenden oluşur. Dış dikdörtgen, genellikle krom olarak adlandırılan istemci olmayan bir alandır. İşletim sisteminin pencere yöneticisi tarafından çizilir ve yönetilir. Boyutları standart işletim sistemi ayarları tarafından belirlenir. İstemci olmayan çerçeve, standart pencere özellikleri ve davranışları sağlar. Bunlar başlık düğmeleri (Simge Durumuna Küçült, Ekranı Kapla ve Kapat), pencere kenarını, yeniden boyutlandırma ve taşıma davranışlarını, uygulama simgesini ve başlığını ve sistem menüsünü içerir. İç dikdörtgen , istemci alanıdır. Uygulamanızın içeriğini içerir ve uygulama tarafından çizilir ve yönetilir. WPF uygulamalarındaki pencereler hakkında daha fazla bilgi için bkz. WPF Windows'a Genel Bakış.

Aşağıdaki çizimde standart pencerenin bölümleri gösterilmektedir.

Pencere öğeleri

Özel Windows

özelliğini None olarak ayarlayarak veya sınıfını Window.WindowStyle kullanarak pencere kenarını WindowChrome özelleştirebilirsiniz.

WindowStyle.None

WPF uygulama penceresinin görünümünü özelleştirmenin bir yolu, özelliğini olarak NoneayarlamaktırWindow.WindowStyle. Bu işlem, istemci olmayan çerçeveyi pencereden kaldırır ve yalnızca özel stil uygulayabileceğiniz istemci alanını bırakır. Ancak, istemci olmayan çerçeve kaldırıldığında, başlık düğmeleri ve pencereyi yeniden boyutlandırma gibi sağladığı sistem özelliklerini ve davranışlarını da kaybedersiniz. Bir diğer yan etki de pencerenin ekranı kapladığında Windows görev çubuğunu kaplamasıdır. Ayarı WindowStyle.None tamamen özel bir uygulama oluşturmanıza olanak tanır, ancak standart pencere davranışına öykünmek için uygulamanızda özel mantık uygulamanızı da gerektirir.

WindowChrome

Standart işlevselliğini korurken pencereyi özelleştirmek için sınıfını WindowChrome kullanabilirsiniz. sınıfı, WindowChrome pencere çerçevesinin işlevselliğini görsellerden ayırır ve uygulama pencerenizin istemci ve istemci olmayan alanları arasındaki sınırı denetlemenize olanak tanır. sınıfı, WindowChrome istemci alanını istemci olmayan alanı kapsayacak şekilde genişleterek pencere çerçevesine WPF içeriği yerleştirmenize olanak tanır. Aynı zamanda, iki görünmez alanda sistem davranışlarını korur; kenarlık ve başlık alanlarını yeniden boyutlandırın.

sınıfını kullanarak özel pencere oluşturmanın WindowChrome iki ana bölümü vardır. İlk olarak, nesnede gösterilen WindowChrome özellikleri ayarlayarak pencerenin istemci olmayan bölümünü özelleştirebilirsiniz. Ardından, uygulamanızın istemci olmayan alana genişletilmiş bölümünü tanımlayan pencere için bir şablon sağlarsınız. nesnesinde WindowChrome kullanıma sunulan özellikler , CaptionHeight, CornerRadiusve GlassFrameThickness'tirResizeBorderThickness.

ResizeBorderThickness özelliği, kullanıcının pencereyi yeniden boyutlandırmak için tıklayıp sürükleyebileceği, uygulama penceresinin dışında görünmez bir kenarlık belirtir.

CaptionHeight özelliği, pencerenin üst kısmında, genellikle başlık çubuğuyla ilişkili sistem davranışlarını etkinleştiren görünmez bir alan belirtir. Bu davranışlar şunlardır: pencereyi taşımak için tıklayıp sürükleyin, pencereyi ekranı kaplamak için çift tıklayın ve sistem menüsünü göstermek için sağ tıklayın.

Kenarlık ve başlık yeniden boyutlandırma alanında herhangi bir görsel öğe yoktur; bunlar yalnızca girişe yanıt veren alanları tanımlar ve sistem tarafından sağlanan standart pencere davranışlarını etkinleştirir.

CornerRadius özelliği, pencerenin köşelerinin yuvarlanma miktarını belirtir. Cam çerçeve bir pencere için etkinleştirildiyse bu özelliğin hiçbir etkisi olmaz.

GlassFrameThickness özelliği, pencerenin etrafındaki cam çerçevenin genişliğini belirtir. Varsayılan olarak, standart bir pencerenin görünümünü öykünmek WindowNonClientFrameThickness için özelliği tarafından belirtilen sistem değerini kullanır. Cam çerçeve kullanıldığında Simge Durumuna Küçült, Ekranı Kapla ve Kapat için başlık düğmeleri görünür ve etkileşimlidir. Uygulama, uygulama simgesini ve başlık metni görüntülemekle sorumludur. Cam çerçeveyi GlassFrameThickness varsayılandan daha geniş veya daha dar hale getirmek için özelliğini ayarlayabilirsiniz.

Dikkat

özellik değiştirildiğinde başlık düğmelerinin GlassFrameThickness boyutu değişmez. Cam çerçevenin üst yüksekliği başlık düğmelerinin yüksekliğinden daha azsa, başlık düğmeleri tamamen görünmez.

Cam çerçevesi olmayan özel bir pencere yapmak için özelliğini 0 tekdüzen değerine ayarlayın GlassFrameThickness . Bu, standart başlık düğmelerini devre dışı bırakır ve gizler.

Cam çerçeveyi tüm pencereyi kaplayacak şekilde genişletmek için, özelliği herhangi bir tarafta negatif bir değere ayarlayın GlassFrameThickness . GlassFrameThickness Özelliği herhangi bir taraf için negatif bir değere ayarlandığında, zorlamalı değeri değerine GlassFrameCompleteThicknesseşit olur.

Not

Aero, Windows Vista'da tanıtılan Windows masaüstünün görünümüne ve işlevselliğine yönelik bir dizi görsel iyileştirmedir. Aero'nun görsel olarak daha belirgin özelliklerinden biri yarı saydam cam pencere kenarlıklarıdır. Windows Aero, Masaüstü Pencere Yöneticisi'nin (DWM) masaüstü oluşturma özelliği tarafından etkinleştirilir.

Windows Aero cam efektleri tüm işletim sistemlerinde desteklenmez ve desteklenen işletim sistemlerinde devre dışı bırakılabilir. Windows Aero kullanılamıyorsa, özellik değerinden bağımsız olarak GlassFrameThickness cam çerçeve görüntülenmez. Bunun yerine bu özellik tarafından belirtilen kenarlık alanı siyah görünür. Windows Aero cam efektlerinin IsGlassEnabled kullanılabilir olduğunu doğrulamak için özelliğini denetleyin. Cam efektler kullanılamıyorsa, cam çerçeveyi kullanmayan alternatif bir pencere stili sağlamanız veya pencere stilini null olarak ayarlayarak standart pencereyi kullanmanız gerekir.

ÇERÇEVE içeriğinin görünümünü ve davranışını tanımlayan bir ControlTemplate belirterek WPF içeriğinizi pencere çerçevesine genişletirsiniz. ControlTemplate'ın TargetType değerini özelleştirdiğiniz pencerenin türüne ayarlarsınız.

<ControlTemplate TargetType="{x:Type local:MainWindow}">  

Varsayılan olarak, pencerenin istemci olmayan alanında yer alan görsel öğelerin bölümleri etkileşimli değildir. İstemci olmayan alanda etkileşimli öğeleri etkinleştirmek için WindowsChrome.IsHitTestVisibleInChrome iliştirilmiş özelliğini öğesine ekleyin ve true olarak ayarlayın.

Aşağıdaki XAML işaretlemesi, WindowChrome sınıfını kullanarak bir pencereyi özelleştirmek için gereken ana öğeleri gösterir.

<Style x:Key="StandardStyle" TargetType="{x:Type local:MainWindow}">  
    <Setter Property="shell:WindowChrome.WindowChrome">  
        <Setter.Value>  
            <shell:WindowChrome />  
        </Setter.Value>  
    </Setter>  
    <Setter Property="Template">  
        <Setter.Value>  
            <ControlTemplate TargetType="{x:Type local:MainWindow}">  
                <Grid>  
                    <Border Background="White"  
                            Margin="{Binding Source={x:Static shell:SystemParameters2.Current}, Path=WindowNonClientFrameThickness}">  
                        <ContentPresenter Content="{TemplateBinding Content}" />  
                    </Border>  
                    <TextBlock Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Title}"   
                               VerticalAlignment="Top" HorizontalAlignment="Left"   
                               Margin="36,8,0,0"/>  
                    <Image Source="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Icon}"  
                           VerticalAlignment="Top" HorizontalAlignment="Left"  
                           Margin="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(shell:WindowChrome.WindowChrome).ResizeBorderThickness}"   
                           Width="{Binding Source={x:Static shell:SystemParameters2.Current}, Path=SmallIconSize.Width}"  
                           shell:WindowChrome.IsHitTestVisibleInChrome="True"/>  
                </Grid>  
            </ControlTemplate>  
        </Setter.Value>  
    </Setter>  
</Style>  

İlk ayarlayıcı WindowChrome'yi pencereye ekler. WindowChrome özellikleri için tüm varsayılan değerleri kullanır ve bu da pencerenin standart bir pencere gibi görünmesini sağlar.

<Setter Property="shell:WindowChrome.WindowChrome">  
    <Setter.Value>  
        <shell:WindowChrome />  
    </Setter.Value>  
</Setter>  

Pencere şablonu, uygulamanızda belirtilen pencerenin içeriğini görüntülemek için bir içerik sunucusu belirtmelidir. Varsayılan olarak WindowChrome sınıfı, istemci dışı kenarlıkları kapsayacak şekilde istemci alanını genişletir. Cam çerçeveyi ortaya çıkarmak için ContentPresenter çevresinde bir kenar boşluğu belirtmeniz gerekir. Bu işaretleme, standart bir pencerenin görünümünü öykünmek için içerik sunucusu çevresinde beyaz arka planlı bir kenarlık belirtir. Ayrıca çerçeve için varsayılan sistem genişliğini alan WindowNonClientFrameThickness özelliğine bağlı bir kenar boşluğu belirtir.

<Border Background="White"  
    Margin="{Binding Source={x:Static shell:SystemParameters2.Current}, Path=WindowNonClientFrameThickness}">  
    <ContentPresenter Content="{TemplateBinding Content}" />  
</Border>  

Uygulama simgesi ve başlığı WindowChrome sınıfı tarafından görüntülenmez; kenarlıklara özel içerik olarak eklenmesi gerekir. Aşağıdaki XAML, simgeyi ve başlığı görüntülemek için bir görüntü ve metin bloğu ekler. Her iki öğe de penceredeki ilgili özelliklere bağlıdır. Görüntü genişliği SmallIconSize genişliğine bağlıdır ve bu da simge için varsayılan sistem boyutunu alır. IsHitTestVisibleInChrome bağlı özelliği, fare olaylarını alabilmesi için görüntüde ayarlanır.

<Image Source="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Icon}"  
       VerticalAlignment="Top" HorizontalAlignment="Left"  
       Margin="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=(shell:WindowChrome.WindowChrome).ResizeBorderThickness}"   
       Width="{Binding Source={x:Static shell:SystemParameters2.Current}, Path=SmallIconSize.Width}"  
       shell:WindowChrome.IsHitTestVisibleInChrome="True"/>  

<TextBlock Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Title}"   
           VerticalAlignment="Top" HorizontalAlignment="Left"   
           Margin="36,8,0,0"/>  

Oluşturucular

WindowChrome()

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

Alanlar

CaptionHeightProperty

CaptionHeight Bağımlılık özelliğini tanımlar.

CornerRadiusProperty

CornerRadius Bağımlılık özelliğini tanımlar.

GlassFrameThicknessProperty

GlassFrameThickness Bağımlılık özelliğini tanımlar.

IsHitTestVisibleInChromeProperty

IsHitTestVisibleInChrome Bağımlılık özelliğini tanımlar.

NonClientFrameEdgesProperty

NonClientFrameEdges Bağımlılık özelliğini tanımlar.

ResizeBorderThicknessProperty

ResizeBorderThickness Bağımlılık özelliğini tanımlar.

ResizeGripDirectionProperty

ResizeGripDirection Bağımlılık özelliğini tanımlar.

UseAeroCaptionButtonsProperty

UseAeroCaptionButtons Bağımlılık özelliğini tanımlar.

WindowChromeProperty

WindowChrome Bağımlılık özelliğini tanımlar.

Özellikler

CanFreeze

Nesnenin değiştirilemez hale getirilip getirilemeyeceğini belirten bir değer alır.

(Devralındığı yer: Freezable)
CaptionHeight

Pencerenin en üstündeki başlık alanının yüksekliğini alır veya ayarlar.

CornerRadius

Pencerenin köşelerinin yuvarlanma miktarını gösteren bir değer alır veya ayarlar.

DependencyObjectType

DependencyObjectType Bu örneğin CLR türünü sarmalayan öğesini alır.

(Devralındığı yer: DependencyObject)
Dispatcher

Dispatcher Bunun DispatcherObject ilişkili olduğu öğesini alır.

(Devralındığı yer: DispatcherObject)
GlassFrameCompleteThickness

-1 tekdüzen kalınlığını alır.

GlassFrameThickness

Pencerenin etrafındaki cam kenarlık genişliğini gösteren bir değer alır veya ayarlar.

IsFrozen

Nesnenin şu anda değiştirilebilir olup olmadığını gösteren bir değer alır.

(Devralındığı yer: Freezable)
IsSealed

Bu örneğin şu anda korumalı (salt okunur) olup olmadığını gösteren bir değer alır.

(Devralındığı yer: DependencyObject)
NonClientFrameEdges

Pencere çerçevesinin hangi kenarlarının istemciye ait olmadığını gösteren bir değer alır veya ayarlar.

ResizeBorderThickness

Pencereyi yeniden boyutlandırmak için kullanılan kenarlık genişliğini gösteren bir değer alır veya ayarlar.

UseAeroCaptionButtons

Windows Aero başlık düğmelerinde isabet testinin etkinleştirilip etkinleştirilmediğini belirten bir değer alır veya ayarlar.

İliştirilmiş Özellikler

IsHitTestVisibleInChrome

Bir pencerenin istemci olmayan alanında yapılan özelleştirmeleri açıklayan bir nesneyi temsil eder.

ResizeGripDirection

Bir pencerenin istemci olmayan alanında yapılan özelleştirmeleri açıklayan bir nesneyi temsil eder.

WindowChrome

Pencereye eklenen örneğini WindowChrome alır veya ayarlar.

Yöntemler

CheckAccess()

Çağıran iş parçacığının bu DispatcherObjectöğesine erişimi olup olmadığını belirler.

(Devralındığı yer: DispatcherObject)
ClearValue(DependencyProperty)

Bir özelliğin yerel değerini temizler. Temizlenecek özellik bir DependencyProperty tanımlayıcı tarafından belirtilir.

(Devralındığı yer: DependencyObject)
ClearValue(DependencyPropertyKey)

Salt okunur özelliğin yerel değerini temizler. Temizlenecek özellik tarafından DependencyPropertyKeybelirtilir.

(Devralındığı yer: DependencyObject)
Clone()

nesnesinin değerlerinin Freezablederin kopyalarını oluşturarak değiştirilebilir bir kopyasını oluşturur. Nesnenin bağımlılık özelliklerini kopyalarken, bu yöntem ifadeleri kopyalar (artık çözümlenmeyebilir) ancak animasyonları veya geçerli değerlerini kopyalar.

(Devralındığı yer: Freezable)
CloneCore(Freezable)

Temel (animasyonlu olmayan) özellik değerlerini kullanarak örneği belirtilen Freezable öğesinin bir kopyası (derin kopya) yapar.

(Devralındığı yer: Freezable)
CloneCurrentValue()

Geçerli değerlerini kullanarak öğesinin Freezable değiştirilebilir bir kopyasını (derin kopya) oluşturur.

(Devralındığı yer: Freezable)
CloneCurrentValueCore(Freezable)

Geçerli özellik değerlerini kullanarak örneği belirtilen Freezable öğesinin değiştirilebilir kopyası (derin kopya) yapar.

(Devralındığı yer: Freezable)
CoerceValue(DependencyProperty)

Belirtilen bağımlılık özelliğinin değerini zorlama. Bu, çağrısında var olan bağımlılık özelliği için özellik meta verilerinde belirtilen herhangi bir CoerceValueCallback işlevi çağırarak DependencyObjectgerçekleştirilir.

(Devralındığı yer: DependencyObject)
CreateInstance()

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

(Devralındığı yer: Freezable)
CreateInstanceCore()

WindowChrome sınıfının yeni bir örneğini oluşturur.

Equals(Object)

Sağlanan DependencyObject öğesinin geçerli DependencyObjectile eşdeğer olup olmadığını belirler.

(Devralındığı yer: DependencyObject)
Freeze()

Geçerli nesneyi değiştirilemez hale getirir ve özelliğini olarak trueayarlarIsFrozen.

(Devralındığı yer: Freezable)
FreezeCore(Boolean)

Freezable Nesneyi değiştirilemez hale getirir veya değiştirilemez hale getirilip getirilemeyeceğini test eder.

(Devralındığı yer: Freezable)
GetAsFrozen()

Temel (animasyonsuz) özellik değerlerini kullanarak öğesinin Freezabledonmuş bir kopyasını oluşturur. Kopya donduruldığından, dondurulan tüm alt nesneler başvuruyla kopyalanır.

(Devralındığı yer: Freezable)
GetAsFrozenCore(Freezable)

Temel (animasyonlu olmayan) özellik değerlerini kullanarak örneği belirtilen Freezable öğesinin dondurulan bir kopyası yapar.

(Devralındığı yer: Freezable)
GetCurrentValueAsFrozen()

Geçerli özellik değerlerini kullanarak öğesinin dondurulan Freezable bir kopyasını oluşturur. Kopya donduruldığından, dondurulan tüm alt nesneler başvuruyla kopyalanır.

(Devralındığı yer: Freezable)
GetCurrentValueAsFrozenCore(Freezable)

Geçerli örneği belirtilen Freezableöğesinin dondurulan bir kopyası yapar. Nesnenin animasyonlu bağımlılık özellikleri varsa, geçerli animasyonlu değerleri kopyalanır.

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

Bu DependencyObjectiçin bir karma kodu alır.

(Devralındığı yer: DependencyObject)
GetIsHitTestVisibleInChrome(IInputElement)

Belirtilen giriş öğesinden eklenen özelliğin değerini IsHitTestVisibleInChrome alır.

GetLocalValueEnumerator()

Hangi bağımlılık özelliklerinin bu DependencyObjectüzerinde yerel olarak ayarlı değerlere sahip olduğunu belirlemek için özelleştirilmiş bir numaralandırıcı oluşturur.

(Devralındığı yer: DependencyObject)
GetResizeGripDirection(IInputElement)

Belirtilen giriş öğesinden eklenen özelliğin değerini ResizeGripDirection alır.

GetType()

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

(Devralındığı yer: Object)
GetValue(DependencyProperty)

Bir öğesinin bu örneğindeki bağımlılık özelliğinin DependencyObjectgeçerli geçerli değerini döndürür.

(Devralındığı yer: DependencyObject)
GetWindowChrome(Window)

Belirtilen Windowdeğerinden WindowChrome ekli özelliğin değerini alır.

InvalidateProperty(DependencyProperty)

Belirtilen bağımlılık özelliği için geçerli değeri yeniden değerlendirir.

(Devralındığı yer: DependencyObject)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

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

Geçerli Freezable nesne değiştirildiğinde çağrılır.

(Devralındığı yer: Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject)

Yeni ayarlanmış bir DependencyObjectType veri üyesi için uygun bağlam işaretçilerinin oluşturulmasını sağlar.

(Devralındığı yer: Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

Bu üye Windows Presentation Foundation (WPF) altyapısını destekler ve doğrudan kodunuzdan kullanılması amaçlanmamıştır.

(Devralındığı yer: Freezable)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

türündeki DependencyObjectFreezabledeğişen bağımlılık özelliğine yanıt olarak herhangi Changed bir işleyici çağırmak için uygulamasını OnPropertyChanged(DependencyPropertyChangedEventArgs) geçersiz kılar.

(Devralındığı yer: Freezable)
ReadLocalValue(DependencyProperty)

Varsa, bağımlılık özelliğinin yerel değerini döndürür.

(Devralındığı yer: DependencyObject)
ReadPreamble()

Freezable geçerli bir iş parçacığından erişildiğinden emin olur. öğesinin devralıcıları Freezable , bağımlılık özellikleri olmayan veri üyelerini okuyan herhangi bir API'nin başında bu yöntemi çağırmalıdır.

(Devralındığı yer: Freezable)
SetCurrentValue(DependencyProperty, Object)

Bağımlılık özelliğinin değerini, değer kaynağını değiştirmeden ayarlar.

(Devralındığı yer: DependencyObject)
SetIsHitTestVisibleInChrome(IInputElement, Boolean)

Belirtilen giriş öğesinde IsHitTestVisibleInChrome ekli özelliğin değerini ayarlar.

SetResizeGripDirection(IInputElement, ResizeGripDirection)

Belirtilen giriş öğesinde ResizeGripDirection ekli özelliğin değerini ayarlar.

SetValue(DependencyProperty, Object)

Bağımlılık özelliği tanımlayıcısı tarafından belirtilen bağımlılık özelliğinin yerel değerini ayarlar.

(Devralındığı yer: DependencyObject)
SetValue(DependencyPropertyKey, Object)

Salt okunur bağımlılık özelliğinin, bağımlılık özelliğinin DependencyPropertyKey tanımlayıcısı tarafından belirtilen yerel değerini ayarlar.

(Devralındığı yer: DependencyObject)
SetWindowChrome(Window, WindowChrome)

Belirtilen Windowüzerindeki ekli özelliğin değerini WindowChrome ayarlar.

ShouldSerializeProperty(DependencyProperty)

Serileştirme işlemlerinin sağlanan bağımlılık özelliği için değeri serileştirmesi gerekip gerekmediğini belirten bir değer döndürür.

(Devralındığı yer: DependencyObject)
ToString()

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

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

Çağıran iş parçacığının bu DispatcherObjectöğesine erişmesini zorlar.

(Devralındığı yer: DispatcherObject)
WritePostscript()

Changed için Freezable olayını oluşturur ve yöntemini çağırırOnChanged(). türetilen Freezable sınıflar, bağımlılık özellikleri olarak depolanmayan sınıf üyelerini değiştiren herhangi bir API'nin sonunda bu yöntemi çağırmalıdır.

(Devralındığı yer: Freezable)
WritePreamble()

öğesinin Freezable dondurulmadığını ve geçerli bir iş parçacığı bağlamından erişildiğini doğrular. Freezable inheritor'lar, bağımlılık özellikleri olmayan veri üyelerine yazan herhangi bir API'nin başında bu yöntemi çağırmalıdır.

(Devralındığı yer: Freezable)

Ekinlikler

Changed

içerdiği veya nesnesi değiştirildiğinde Freezable gerçekleşir.

(Devralındığı yer: Freezable)

Şunlara uygulanır