2009-06-30 26 views
26

Necesito un control con forma de botón que pueda tener una propiedad marcada, de modo que al hacer clic se mantenga presionado.WPF CheckBox con apariencia de "Botón"

Tenía esa funcionalidad en WinForms, con el control CheckBox, estableciendo la propiedad Apariencia en "Botón".

¿Alguien me puede ayudar?

Respuesta

40

Use ToggleButton, tiene toda la funcionalidad que ve en un CheckBox dado que se deriva de él.

+1

Wow! Usted abrió una nueva puerta para mí. Soy nuevo en WPF y no sabía que hay controles ocultos que no están visibles en la barra de herramientas de VS. También encontré el RepeatButton que ayudará en otra situación. Muchas gracias. –

+4

Hay muchas otras cosas que no encontrarás en el diseñador, como ItemsControl. A medida que se sienta más cómodo con WPF, probablemente se encuentre escribiendo el XAML a mano o utilizando Blend. Además, si es marca, un libro realmente bueno es WPF Unleashed: http://www.amazon.com/Windows-Presentation-Foundation-Unleashed-WPF/dp/0672328917 – rmoore

5

WPF tiene un control integrado ToggleButton que cumple esta función. Si necesita cambiar la apariencia visual de este control predeterminado, deberá aplicar una nueva Plantilla (ControlTemplate).

1

<Window.BindingGroup> 
    <BindingGroup Name="{x:Null}" NotifyOnValidationError="False" /> 
</Window.BindingGroup> 
<Grid> 
    <nit:checkbutton1 x:Name="button1" Margin="32,88,0,0" Click="checkbutton1_Click" HorizontalAlignment="Left" Width="31" Height="32" VerticalAlignment="Top" mode="{Binding ElementName=cb1, Path=SelectedItem}" /> 
    <ComboBox x:Name="cb1" ItemsSource="{Binding Source={StaticResource modeEnum}}" IsSynchronizedWithCurrentItem="True" Height="23" Margin="0,97,24,0" VerticalAlignment="Top" HorizontalAlignment="Right" Width="112" /> 
</Grid> 

+0

Nit

+0

¿Qué hay de su "nit: checkbutton1"? –

Cuestiones relacionadas