Nu sunt sigur că înțeleg pe deplin întrebările, dar lasă-mă să încerc. Totul contează cât de adânc vrei să mergi aici. Există mai multe moduri de a pielii aceasta pisica.
1 - Cred că te întreba cum să utilizeze IsCheckedproprietatea de a influența aspectul CheckBox? Modul de a face acest lucru este re-Tiparul cu CheckBoxși de a folosi un declanșator în șablon. Ceva de genul:
<CheckBox>
<CheckBox.Template>
<ControlTemplate TargetType="CheckBox">
<StackPanel Orientation="Horizontal">
<Image x:Name="_image" Source="Unchecked.jpg"/>
<ContentControl Content="{Binding Content}"/>
</StackPanel>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="True">
<Setter TargetName="_image" Property="Source" Value="Checked.jpg"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</CheckBox.Template>
</CheckBox>
Există mai mult să ia în considerare aici, dar care ar trebui sa ai început.
2 - Puteți folosi InputBindingspentru a executa o comandă atunci când unele de intrare este primit de control. Deci , puteți defini o comandă care verifică sau Debifarea corespunzătoare în CheckBoxfuncție de parametrul trecut la comanda. Apoi , puteți face ceva de genul:
<CheckBox>
<CheckBox.InputBindings>
<KeyBinding Key="1" Command="{x:Static local:Commands.YourCommand}" CommandParameter="1"/>
</CheckBox.InputBindings>
</CheckBox>
Din nou, există mai multe moduri de a rezolva problemele tale aici. Sperăm că acest lucru vă pilotează în direcția cea bună.