casella di domanda personalizzata # WPF C

voti
2

Ho appena iniziato a ricevere più in profondità C # e design WPF, in modo da non mente se chiedo per alcuni principi fondamentali.

Sto cercando di porto una delle nostre applicazioni internet per ac # applicazione e avendo qualche difficoltà.

Ho bisogno di 4 caselle di controllo che sembrano questo. Se si fa clic su loro che dovrebbero apparire come il secondo.

http://frauneder.com/checkbox_example.jpg

Sono stato in grado di farlo con le immagini che cambiano al click ma non mi manca la proprietà IsChecked.

La seconda domanda: Voglio selezionare / deselezionare le caselle con i tasti 1-4 sulla mia tastiera. Come faccio a fare questo?

Grazie mille in anticipo!

È pubblicato 16/08/2009 alle 18:34
fonte dall'utente
In altre lingue...                            


1 risposte

voti
11

Io non sono sicuro di aver capito pienamente le vostre domande, ma mi permetta di provare. Tutto importa quanto in profondità vuoi andare anche qui. Ci sono molti modi per la pelle questo gatto.

1 - Penso che stai chiedendo come utilizzare la IsCheckedproprietà per influenzare l'aspetto del CheckBox? Il modo per farlo è ri-modello il CheckBoxe utilizzare un trigger nel modello. Qualcosa come questo:

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

Non v'è più da considerare qui, ma che dovrebbe iniziare.

2 - È possibile utilizzare InputBindingsper eseguire un comando quando alcuni input viene ricevuto dal controllo. Così si può definire un comando che controlla o deseleziona l'appropriata CheckBoxin base al parametro passato al comando. Poi si può fare qualcosa di simile a questa:

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

Anche in questo caso, ci sono molti modi per risolvere i vostri problemi qui. Speriamo che questo si dirige nella direzione giusta.

Risposto il 16/08/2009 a 20:24
fonte dall'utente

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