In der Application Ressource wollte ich allen Windows die gleichen Styles mitgeben, doch schon beim Background scheitere ich.
<Application.Resources>
<Style TargetType="Window">
<Setter Property="Background" Value="GreenYellow"/>
</Style>
</Application.Resources>
Wo liegt mein Fehler? Der Code ist doch richtig?
Edit. Noch eine Frage.
Um Information (Version, Copyright, kurze Beschreibung was Tool macht) anzeigen zu lassen, ist es besser eine MessageBox zu nehmen, oder lieber ein neues Fenster erstellen?
Du mußt schon den richtigen Typ verwenden, d.h. dein MainWindow:
<Style TargetType="local:MainWindow">
Zu deiner zweiten Frage, bitte beachte [Hinweis] Wie poste ich richtig?, erstelle einen Thread pro Frage und gibt uns mehr Informationen, um die Frage zu beantworten. "Ist es besser" hängt von vielen Faktoren ab.
Weeks of programming can save you hours of planning
OK, dann habe ich mein Problem anscheinend falsch beschrieben.
Habe zur Zeit, 1 MainWindow und ein weiteres Window was über das erste durch einen Button aufgerufen wird.
In der App.xml wollte ich in den Ressourcen festlegen, das alle Windows welches jemals in der App geöffnet werden, die gleiche Hintergrund Farbe haben werden.
Das funktioniert bei Window
s nicht, weil du ja jeweils davon abgeleitete Klassen erstellst (während es bei anderen UI-Controls so funktioniert, solange der Klassenname exakt übereinstimmt).
In den Styles kannst du aber auch BasedOn verwenden, um auf einen Basisstil zu verweisen (müßtest dann aber für jedes Window einen eigenen Style
erstellen).
Alternativ ginge noch jeweils einen Key
zu setzen (und verwenden) oder per Code den Style zu setzen, s. Why a window style couldn't apply to WPF windows automatically without x:Key property.