2010-06-15 19 views
5

All'interno di un'applicazione desktop Ho un pulsante di commutazione:Perché il WPF pulsante di commutazione impulso incontrollato una volta

<ToggleButton x:Name="CFStglBtn" Checked="cfsCBox_Checked" 
       Unchecked="cfsCBox_Unchecked" 
       IsChecked="True" HorizontalAlignment="Left" Margin="5,0,0,0"> 
    <StackPanel Orientation="Horizontal"> 
     <Image Source="assets\telephone.png" Margin="3,0,0,0" /> 
     <TextBlock Text="CFS" FontSize="10" Margin="5,5,5,0" 
        Foreground="DarkSlateGray"/> 
    </StackPanel> 
</ToggleButton> 

Per l'evento Controllato Io sono la creazione di un valore e quindi l'esecuzione di un metodo FilterView(); // omettendo codice

stato incontrollato è esattamente l'opposto. resetta una variabile ed eseguito il metodo nuovo

La domanda che ho è ho notato quando deselezionare il pulsante di commutazione del pulsante continua ad impulsi o flash (andando dal blu al cromo) come se ancora attivo. Il pulsante rimarrà così fino a quando non si farà clic su un altro pulsante.

C'è un modo per rimuovere questa attenzione in modo che quando il pulsante non è selezionato il pulsante torna a uno stato incontrollato, senza il lampeggio/pulsante di colore.

  • Come si può vedere da sopra questo è un pulsante standard COM nessuna stili o personalizzato
  • Ho provato questo solo su un pulsante regolare e ho trovato lo stesso avvenne quando cliccato il pulsante continuerà a pulsare/flash fino viene fatto clic su un altro pulsante.

Come aggirare questo o impedire che questo effetto accada.

Grazie

+0

non so perché non ha pubblicato, ma qui è il codice per il pulsante di commutazione rlcrews

+0

Il codice deve essere preceduto da una riga vuota e da 4 spazi rientrati. Oppure evidenziarlo e fare clic sull'icona "Esempio di codice" (101010). – ChrisF

risposta

5

questo sta accadendo a causa del pulsante cromato integrato nel modello predefinito per il controllo. L'unica soluzione alternativa consiste nel ridisegnare lo Button. This article dovrebbe iniziare.

+0

Grazie che è perfetto Ho anche controllato con un pari mio e lui refereced un articolo da StackOverflow con un'altra soluzione http://stackoverflow.com/questions/362993/wpf-template-binding-in-togglebutton-usercontrol Grazie ancora! – rlcrews

10

Impostare il pulsante Focusable="False".

+1

nice easy fix invece di re-templating – cab

Problemi correlati