アプリケーション リソースを使用する方法 (WPF .NET)
この例では、アプリケーションが定義するリソースを使用する方法について説明します。 リソースはアプリケーション レベルで定義できます。App.xaml または Application.xaml ファイルが一般的に利用されますが、それはプロジェクト ファイルで使用されているものになります。 アプリケーションによって定義されるリソースはグローバルにスコープが設定され、アプリケーションのあらゆる部分でアクセスできます。
例
次の例は、アプリケーション定義ファイルを示しています。 アプリケーション定義ファイルでは、リソース セクション (Resources プロパティの値) を定義します。 アプリケーション レベルで定義されているリソースには、そのアプリケーションの一部であるその他すべてのページからアクセスできます。 この例では、リソースは宣言済みのスタイルです。 コントロール テンプレートを含む完全なスタイルは長くなる場合があるため、この例では、スタイルの ContentTemplate プロパティ セッターで定義されているコントロール テンプレートは省略されています。
<Application.Resources>
<Style TargetType="Border" x:Key="FancyBorder">
<Setter Property="Background" Value="#4E1A3D" />
<Setter Property="BorderThickness" Value="5" />
<Setter Property="BorderBrush">
<Setter.Value>
<LinearGradientBrush>
<GradientStop Offset="0.0" Color="#4E1A3D"/>
<GradientStop Offset="1.0" Color="Salmon"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
</Style>
</Application.Resources>
次の例では、前の例からのアプリケーションレベル リソースを参照する XAML ページを確認できます。 リソースは、リソースの一意のリソース キーを指定する StaticResource マークアップ拡張によって参照されます。 現在のオブジェクトとウィンドウのスコープでは、リソース "FancyBorder" が見つかりません。そのため、リソース参照は、現在のページを超え、アプリケーションレベルのリソースまで続行されます。
<Border Style="{StaticResource FancyBorder}">
<StackPanel Margin="5">
<Button>Button 1</Button>
<Button>Button 2</Button>
<Button>Button 3</Button>
<Button>Button 4</Button>
</StackPanel>
</Border>
関連項目
.NET Desktop feedback