C # WPF pytanie zwyczaj wyboru

głosy
2

Właśnie zacząłem coraz głębiej w C # i WPF projektu, więc nie przeszkadza, jeśli mogę prosić o pewne podstawy.

Próbuję porcie jednej z naszych aplikacji internetowych do AC # aplikacji i pewne trudności.

Muszę 4 pól wyboru, które wyglądają tak. Jeśli je kliknąć powinny one wyglądać drugim.

http://frauneder.com/checkbox_example.jpg

Udało mi się to zrobić z obrazami, które zmieniają się na kliknięcie, ale nie tęsknię właściwość IsChecked.

Drugie pytanie: Chcę sprawdzić / usuń zaznaczenie pola wyboru przy użyciu 1-4 klawiszy na klawiaturze. Jak mam to zrobic?

Thanx bardzo dużo wcześniej!

Utwórz 16/08/2009 o 18:34
źródło użytkownik
W innych językach...                            


1 odpowiedzi

głosy
11

Nie jestem pewien, że w pełni zrozumieć pytania, ale pozwól mi spróbować. To wszystko ma znaczenie, jak głęboko chcesz iść tutaj, też. Istnieje wiele sposobów na skórę ten kot.

1 - Myślę, że pytasz, jak korzystać z IsCheckedwłaściwości wpływania na wygląd CheckBox? Sposobem na to jest ponownie szablonie CheckBoxi użyć wyzwalacza w szablonie. Coś takiego:

<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>

Jest więcej do rozważenia tutaj, ale to powinno Ci zacząć.

2 - można użyć InputBindingsdo wykonania polecenia, gdy niektóre wejściowe są odbierane przez kontrolę. Tak można zdefiniować polecenia, które sprawdza lub usuwa zaznaczenie pola wyboru w³aœciwe CheckBoxw oparciu o parametr przekazany do polecenia. Następnie można zrobić coś takiego:

<CheckBox>
    <CheckBox.InputBindings>
        <KeyBinding Key="1" Command="{x:Static local:Commands.YourCommand}" CommandParameter="1"/>
    </CheckBox.InputBindings>
</CheckBox>

Ponownie, istnieje wiele sposobów, aby rozwiązać swoje problemy tutaj. Mam nadzieję, że kieruje się w dobrym kierunku.

Odpowiedział 16/08/2009 o 20:24
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more