CheckBox -- Content bei Auswahl ändern

  • WPF

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von VB1963.

    CheckBox -- Content bei Auswahl ändern

    Halli hallo,

    ich mache derzeit ein kleines Programm, einfach nur Spaßeshalber, da ich die Woche krankgeschrieben bin und auf der Arbeit mehr mit Webdevelopment am Hut habe, als .Net.

    Ich habe eine Seite, die voller True/False-Aufgaben ist.
    Die Abfrage soll mit CheckBoxen erfolgen.

    Bevor ich mir doppelte Arbeit mache, und alles über DataBindings mache (den Content setzen, versteht sich), wollte ich ein Style benutzen.

    Dieses sieht folgendermaßen aus: (Das Auskommentierte ist mein erster Versuch, der auch fehl schlug)

    XML-Quellcode

    1. <Style x:Key="trueOrFalseCheckBox" TargetType="CheckBox" >
    2. <Setter Property="OverridesDefaultStyle" Value="True" />
    3. <Setter Property="Margin" Value="5" />
    4. <Setter Property="Content" Value="False" />
    5. <!--<Setter Property="Template" >
    6. <Setter.Value >
    7. <ControlTemplate TargetType="CheckBox" >
    8. <Border Name="border"
    9. BorderThickness="1"
    10. Padding="4,2"
    11. BorderBrush="DarkGray"
    12. CornerRadius="3"
    13. Background="{TemplateBinding Background}">
    14. <ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center" />
    15. </Border>
    16. <ControlTemplate.Triggers>
    17. <Trigger Property="IsChecked" Value="False" >
    18. <Setter Property="Content" Value="False" />
    19. </Trigger>
    20. <Trigger Property="IsChecked" Value="True" >
    21. <Setter Property="Content" Value="True" />
    22. </Trigger>
    23. </ControlTemplate.Triggers>
    24. </ControlTemplate>
    25. </Setter.Value>
    26. </Setter>-->
    27. <Style.Triggers>
    28. <Trigger Property="IsChecked" Value="True">
    29. <Setter Property="Content" Value="Checked!"/>
    30. </Trigger>
    31. </Style.Triggers>
    32. </Style>


    Beide Versuche schlugen fehl und ich weiß nicht warum. Bei Buttons kann ich den Content/Background/etc mit Triggern und dem Gleichen ändern, wieso klappt das denn ausgerechnet bei CheckBoxen nicht?

    Vielen Dank im Voraus! c:
    "Nichts ist unendlich, bis auf die menschliche Dummheit" - Albert Einstein
    "Man sollte nicht alles vertrauen, was im Netz steht" - Abraham Lincoln
    Probiere es einmal so in der Art:

    XML-Quellcode

    1. <StackPanel>
    2. <StackPanel.Resources>
    3. <Style TargetType="CheckBox">
    4. <Setter Property="Content" Value="Unchecked"/>
    5. <Setter Property="Foreground" Value="Black"/>
    6. <Style.Triggers>
    7. <DataTrigger Binding="{Binding RelativeSource={RelativeSource Self},Path=IsChecked}" Value="True">
    8. <Setter Property="Content" Value="Checked"/>
    9. <Setter Property="Foreground" Value="Red"/>
    10. </DataTrigger>
    11. </Style.Triggers>
    12. </Style>
    13. </StackPanel.Resources>
    14. <CheckBox></CheckBox>
    15. </StackPanel>