2009-06-30 71 views
26

我需要一個可以具有Checked屬性的按鈕式控件,以便在單擊時保持按下狀態。帶有「按鈕」外觀的WPF複選框

我在WinForms中使用CheckBox控件將Appearance屬性設置爲「Button」。

有人可以幫助我嗎?

回答

40

使用ToggleButton,它具有您在CheckBox中看到的所有功能,因爲它是從它派生的。

+1

哇!你爲我開了一扇新門。我是WPF的新手,並不知道在VS工具欄中沒有隱藏的控件。我還發現了RepeatButton,這將有助於另一種情況。非常感謝你。 – 2009-06-30 16:40:55

+4

有很多其他的東西,你不會在設計器中找到,比如ItemsControl。隨着您對WPF更加熟悉,您可能會發現自己只需手動編寫XAML或使用Blend即可。此外,如果你是品牌真正好書是WPF釋放:http://www.amazon.com/Windows-Presentation-Foundation-Unleashed-WPF/dp/0672328917 – rmoore 2009-06-30 17:01:59

5

WPF有一個內置的ToggleButton控件用於此目的。如果您需要更改此默認控件的外觀,您需要爲其應用新的模板(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>