FrameworkContentElement.Resources Özellik

Tanım

Geçerli yerel olarak tanımlanmış kaynak sözlüğünü alır veya ayarlar.

public:
 property System::Windows::ResourceDictionary ^ Resources { System::Windows::ResourceDictionary ^ get(); void set(System::Windows::ResourceDictionary ^ value); };
public System.Windows.ResourceDictionary Resources { get; set; }
[System.Windows.Markup.Ambient]
public System.Windows.ResourceDictionary Resources { get; set; }
member this.Resources : System.Windows.ResourceDictionary with get, set
[<System.Windows.Markup.Ambient>]
member this.Resources : System.Windows.ResourceDictionary with get, set
Public Property Resources As ResourceDictionary

Özellik Değeri

Geçerli yerel olarak tanımlanmış kaynaklar. Bu, sözlük içindeki kaynaklara anahtarla erişilen bir kaynak sözlüğüdür.

Öznitelikler

Örnekler

Aşağıdaki örnek, kök öğesinde bir ResourcesFlowDocument koleksiyon oluşturur. FlowDocument , kök öğe olarak anlamlı olan birkaç FrameworkContentElement sınıftan biri olduğundan ve kaynaklar genellikle sayfa kökünde veya uygulama gibi daha yüksek düzeylerde depolandığından tipik bir seçimdir.

<FlowDocument
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  x:Class=" SDKSample.Page2">
  <FlowDocument.Resources>
    <Style TargetType="{x:Type Paragraph}" x:Key="BluePara">
      <Setter Property="Background" Value="Blue"/>
      <Setter Property="FontSize" Value="18"/>
      <Setter Property="Foreground" Value="LightBlue"/>
      <Setter Property="FontFamily" Value="Trebuchet MS"/>
    </Style>
  </FlowDocument.Resources>
  <Paragraph Style="{StaticResource BluePara}">Lorem ipsum etc.</Paragraph>
</FlowDocument>

Açıklamalar

Tamamen veya kısmen Genişletilebilir Uygulama Biçimlendirme Dili'nde (XAML) tanımlanabilen kaynak sözlükleri genellikle bir özellik öğesi olarak oluşturulur ve genellikle herhangi bir sayfanın veya uygulamanın kök öğesinde bulunur. Kaynak sözlüğün bu düzeye yerleştirilmesi, sayfadaki (veya uygulama durumunda herhangi bir sayfadan) tek tek alt öğelerden bulmayı kolaylaştırır. Çoğu uygulama senaryosunda, stillerin bir kaynak sözlüğü içindeki nesne öğeleri olarak tanımlanmasını veya stil kaynağının tamamının bağımsız olabilmesi için dış kaynaklar olarak tanımlanmasını öneririz (bu yaklaşım, düzenlenmesi gereken fiziksel dosyaları ayırarak tasarımcı sorumluluklarını geliştirici sorumluluklarından ayırmaya yardımcı olur).

Bu özelliğin yalnızca doğrudan bu öğe içinde bildirilen kaynak sözlüğü döndürdüğünü unutmayın. Bu, bir alt öğenin her üst öğede tanımlanan kaynaklardan herhangi birine erişebildiği ve özyinelemeli olarak yukarı doğru arama yaptığı gerçek kaynak arama işleminden farklıdır.

Kaynaklara koleksiyonun içinden kod tarafından da başvurulabilir, ancak sözlüğü bildiren öğe tarafından oluşturulana kadar Loaded XAML'de oluşturulan kaynaklara kesinlikle erişilmeyeceğini unutmayın. Aslında kaynaklar zaman uyumsuz olarak ayrıştırılır ve olay bile Loaded XAML tanımlı bir kaynağa başvurabileceğinizin güvencesi değildir. Bu nedenle genellikle yalnızca çalışma zamanı kodunun bir parçası olarak veya öznitelik değerleri için stiller veya kaynak uzantısı başvuruları gibi diğer XAML teknikleri aracılığıyla XAML tanımlı kaynaklara erişmeniz gerekir. Kod aracılığıyla kaynaklara eriştiğiniz zaman, temelde XAML'den yapılan DynamicResource başvurusuna eşdeğerdir.

Temel alınan ResourceDictionary , kod kullanarak koleksiyonun içinden kaynak eklemek, kaldırmak veya sorgulamak için gereken yöntemleri destekler. Resources özelliği, bir öğenin kaynak koleksiyonunu yeni veya farklı ResourceDictionaryolacak şekilde tamamen değiştirme senaryolarını destekleyecek şekilde ayarlanabilir.

Gösterilen XAML söz diziminin için ResourceDictionarybir öğesi içermediğini göreceksiniz. Bu örtük koleksiyon söz dizimi örneğidir; koleksiyon öğesini temsil eden bir etiket atlanabilir. Bunun yerine koleksiyona öğe olarak eklenen öğeler belirtilir. Örtük koleksiyonlar ve XAML hakkında daha fazla bilgi için bkz. XAML Söz Dizimi Ayrıntılı. Birleştirilmiş ResourceDictionary bir sözlüğü tanıtıyorsanız ve bu durumda için genellikle alt öğe ResourceDictionaryyoksa, yine de bir öğesi olarak açıkça belirtilmiş bir durumdur. Ayrıntılar için bkz. Birleştirilmiş Kaynak Sözlükleri.

XAML Özellik Öğesi Kullanımı

<object>  
  <object.Resources>  
    oneOrMoreResourceElements  
  </object.Resources>  
</object>  

XAML Değerleri

oneOrMoreResourceElements
Her biri bir kaynağı tanımlayan bir veya daha fazla nesne öğesi. Her ResourceDictionary bir kaynak özelliği öğesinin x:Key Yönergesi için benzersiz bir değere sahip olması gerekir. Bu, değer öğesinden ResourceDictionaryalındığında benzersiz anahtar görevi görür.

Şunlara uygulanır

Ayrıca bkz.