Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Wieso macht Visual Studio nicht was ich will
Sam99
myCSharp.de - Member



Dabei seit:
Beiträge: 11

Themenstarter:

Wieso macht Visual Studio nicht was ich will

beantworten | zitieren | melden

[Artikel] WPF (Windows Presentation Foundation) Einführung - aktuell Teil 3: Beispielanwendung [Artikel] WPF (Windows Presentation Foundation) Einführung - aktuell Teil 3: Beispielanwendung Hallo, ich bin langsam am verzweifeln. In Visual Studio arbeite ich mit mehereren Templates die in Design.xaml gespeichert sind. In App.xaml verweise ich auch auf diese Ressource. In MainWindow.xaml verwendet ein Label dieses Template; sollte es jedenfalls, in Vorschau-Editor von VS wird auch alles richtig angezeigt, aber beim Ausführen der App nicht. Warum???

Im Anhang ist noch ein Bild, damit ihr sehen könnt, was ich meine.

Gruß, Sam99
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Sam99 am .
Attachments
private Nachricht | Beiträge des Benutzers
Sam99
myCSharp.de - Member



Dabei seit:
Beiträge: 11

Themenstarter:

beantworten | zitieren | melden

so langsam verstehe ich das Problem:
Ich habe zwei verschiedene Styles definiert, eins für Label und eins für Textblock.

    <Style TargetType="Label">
        <Setter Property="FontFamily" Value="Ubuntu Light"/>
        <Setter Property="Foreground" Value="{DynamicResource ResourceKey=ForegroundColor}"/>
        <Setter Property="FontSize" Value="20"/>
    </Style>

    <Style TargetType="TextBlock">
        <Setter Property="FontFamily" Value="Ubuntu Light"/>
        <Setter Property="FontSize" Value="18"/>
        <Setter Property="Foreground" Value="{DynamicResource ResourceKey=ForegroundColor}"/>
    </Style>

Nun übernehmen die Labels das Style für Textblock. Wie man aber am folgenden Code sieht, hab ich das so nie programmiert.

<Label Content="Artikel" Margin="136,20,126,0"  HorizontalAlignment="Center" VerticalAlignment="Top" Width="74" Height="34"/>
Ich hab das nochmal zur Sicherheit überprüft indem ich bei TextBlock die Farbe auf
rot gesetzt habe und siehe da, die Labels wurden alle rot.
Wieso übernehmen die Labels den Style für TextBlock?
private Nachricht | Beiträge des Benutzers
CSharperUser
myCSharp.de - Member



Dabei seit:
Beiträge: 81

beantworten | zitieren | melden

Hallo Sam99,

deine Styles unterscheiden sich lediglich in der Schriftgröße. Deshalb ist es auch nicht verwunderlich, dass beide eine rote Schriftfarbe haben, siehe

Value="{DynamicResource ResourceKey=ForegroundColor}"

Das Label übernimmt also nicht den Style des TextBlock.
private Nachricht | Beiträge des Benutzers
Sam99
myCSharp.de - Member



Dabei seit:
Beiträge: 11

Themenstarter:

beantworten | zitieren | melden

Folgendes: ich habe im style für textblock

Value="{DynamicResource ResourceKey=ForegroundColor}"

ersetzt durch
Value="Red"

und dies wurde dann auch für die labels übernommen.
Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von Sam99 am .
private Nachricht | Beiträge des Benutzers