Visual Studio / WPF > Resources > Application Resources 

```txt:動作環境
Windows 7 Pro (32bit)
Microsoft Visual Studio 2017 Community
```

http://qiita.com/7of9/items/f2e39938d00a8f0aca1a
などでWindowsのResources指定をした。

この場合、特定のWindowにおいてのみ有効となる。


[How to: Use Application Resources](https://docs.microsoft.com/en-us/dotnet/framework/wpf/advanced/how-to-use-application-resources)においてApplicationレベルでのStyle指定の例がある。

試してみた。
(x:Key指定をせずImplicit keyのバージョン)。

```App.xaml
<Application x:Class="_170615_t1450_ImplicitKey.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:local="clr-namespace:_170615_t1450_ImplicitKey"
             StartupUri="MainWindow.xaml">
    <Application.Resources>
        <Style TargetType="Button">
            <Setter Property="Background">
                <Setter.Value>
                    <LinearGradientBrush>
                        <GradientStop Offset="0.0" Color="AliceBlue"/>
                        <GradientStop Offset="1.0" Color="Salmon"/>
                    </LinearGradientBrush>
                </Setter.Value>
            </Setter>
            <Setter Property="FontSize" Value="18"/>
        </Style>
    </Application.Resources>
</Application>
```

```MainWindow.xaml.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace _170615_t1450_ImplicitKey
{
    /// <summary>
    /// MainWindow.xaml の相互作用ロジック
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void Button_Click(object sender, RoutedEventArgs e)
        {
            SubWindow sb = new SubWindow();
            sb.Show();
        }
    }
}
```

```MainWindow.xaml
<Window x:Class="_170615_t1450_ImplicitKey.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:_170615_t1450_ImplicitKey"
        mc:Ignorable="d"
        Title="MainWindow" Height="350" Width="525">
    <Window.Resources>
    </Window.Resources>
    <Grid>
        <StackPanel>
            <Button Width="100" Height="28" Content="Button1"
                    Click="Button_Click"/>
            <Button Width="100" Height="28" Content="Button2"/>
            <Button Width="100" Height="28" Content="Button3"/>
        </StackPanel>
    </Grid>
</Window>
```

```SubWindow.xaml
<Window x:Class="_170615_t1450_ImplicitKey.SubWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:_170615_t1450_ImplicitKey"
        mc:Ignorable="d"
        Title="SubWindow" Height="300" Width="300">
    <Grid>
        <Button Content="Button2" Height="28" Width="100"></Button>
    </Grid>
</Window>
```

### 結果

![2017-06-15_15h18_02.png](https://qiita-image-store.s3.amazonaws.com/0/32870/77056da0-0b7f-2636-dd9b-4a6ea0e7aa99.png)

2つのWindowで同じスタイルになった。

Applicationレベルで同じスタイルを使いたい場合に利用できそうだ。