2010-01-20 19 views
12

WPF uygulamasında ana pencerenin rengini ayarlamak için bir kaynak kullanmalıyım. Kaynak bildirimi, pencere bildiriminden sonra geldiğinden (kaynak sözlüğü alıyorum), Window nesnesinde Background özelliğini kullanamıyorum. nesne Renk özelliği için bir fırça kaynak sürmez çünküPencereyi arka plan rengini kaynak kullanarak ayarlama

<Window.Resources> 
... 
</Window.Resources> 

<Window.Background> 
    <SolidColorBrush Color="{StaticResource WindowBackgroundBrush}" /> 
</Window.Background> 

Benim sözdizimi biraz kapalı: Yani, ben bir geçmiş bu şekilde ayarlamak düşündüm. Düzeltme nedir? Yardım ettiğin için teşekkür ederim.

cevap

15

deneyin bu

<Window.Background> 
    <StaticResource ResourceKey="WindowBackgroundBrush" /> 
</Window.Background> 
0

Çözüm, kaynaklarınızı App.xaml içine koymaktır. Böylece Pencerenizdeki Arkaplan'ı herhangi bir sorun olmadan ayarlayabilirsiniz.

+0

A çözümüne bakın; Ayrıca, Prism uygulamaları gibi birden fazla projeyi içeren uygulamalar için uygun değildir. –

16

bu işleri:

<Window x:Class="Moria.Net.MainWindow" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     Title="MainWindow" 
     x:Name="window" 
     Background="{DynamicResource WindowBrush}" 
     Width="800" Height="600"> 
    <Window.Resources> 
     <SolidColorBrush x:Key="WindowBrush" Color="LightGray"/> 
    </Window.Resources> 
</Window> 

Burada dikkat edilmesi gereken en önemli şey x: penceresindeki adını ve Arkaplan mülkiyet

alternativly içinde DynamicResource , bu aynı zamanda çalışır ....

<Window.Resources> 
     <SolidColorBrush x:Key="WindowBrush" Color="LightGray"/> 
    </Window.Resources> 
    <Window.Style> 
     <Style TargetType="{x:Type Window}"> 
      <Setter Property="Background" Value="{StaticResource WindowBrush}"/> 
     </Style> 
    </Window.Style> 

Bir not olarak, uygulama için temayı kullanmak istiyorsanız, component resource keys

İlgili konular