C # WPF вопрос пользовательских флажок

голоса
2

Я только начал получать глубже в C # и WPF дизайн, поэтому не возражаете, если я прошу некоторые основы.

Я пытаюсь порт одного из наших интернет-приложений на C # приложения и с некоторыми трудностями.

Мне нужно 4 флажков, которые выглядят следующим образом. Если щелкнуть им, что они должны выглядеть, как второй.

http://frauneder.com/checkbox_example.jpg

Я был в состоянии сделать это с изображениями, которые меняются по щелчку, но там я пропускаю IsChecked недвижимости.

Второй вопрос: Я хочу, чтобы проверить / снимите флажки с помощью 1-4 клавиш на клавиатуре. Как мне это сделать?

Thanx очень много заранее!

Задан 16/08/2009 в 18:34
источник пользователем
На других языках...                            


1 ответов

голоса
11

Я не уверен, я полностью понимаю ваши вопросы, но позвольте мне попробовать. Все это важно, насколько глубоко вы хотите идти здесь, тоже. Есть много способов кожи этого кота.

1 - Я думаю , что вы спрашиваете , как использовать IsCheckedсвойство влиять на внешний вид CheckBox? Способ сделать это повторно стандартный шаблон CheckBoxи использовать триггер в шаблоне. Что-то вроде этого:

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

Существует больше, чтобы рассмотреть здесь, но это должно вам начать.

2 - Вы можете использовать , InputBindingsчтобы выполнить команду , когда некоторые ввода получает контроль. Таким образом , вы можете определить команду , которая проверяет или неустановленную соответствующий CheckBoxна основе параметра , переданный в команду. Затем вы можете сделать что - то вроде этого:

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

Опять же, есть много способов решить ваши проблемы здесь. Надеемся, что это бычков вы в правильном направлении.

Ответил 16/08/2009 в 20:24
источник пользователем

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