2014-02-14 77 views
4

我有两个单选按钮,我希望默认情况下选择一个按钮。我添加了IsChecked="true",但它不起作用。我也尝试将它设置在窗口加载中。WPF单选按钮IsChecked不工作

但是,当我点击第二个选项,然后点击第一个选项,一切工作正常。

它只是不显示点击第一次加载。

<StackPanel Orientation="Vertical" Margin="0 3 0 0" Height="55"> 
    <RadioButton IsChecked="True" Padding="1 1 0 10" Name="AutoSaveRadioButton"> 
     <TextBlock Foreground="Black">Auto Save Test File</TextBlock> 
    </RadioButton> 
    <RadioButton Margin="0 1 0 0" Padding="1 1 3 1" Name="SaveFileTogetherRadioButton"> 
     <TextBlock Foreground="Black">Save Test File &amp; <LineBreak /> output file together</TextBlock> 
    </RadioButton> 
</StackPanel> 
+0

我只是复制并粘贴您的XAML到一个新创建的WPF项目并运行它。第一个单选按钮被选中,所以我无法重现您的问题。这是与.NET 4.0。 – Steve

+0

嗯。是的....好吧..我怀疑它与我使用的主题有关吗?我正在使用我在wpf社区中找到的BureauBlack主题。 – Dave

+0

除非你发布一些更多的信息,这里没有太多可以继续。 – Shoe

回答

4

假设您使用的主题是this one,它看起来像一个主题错误。仅当IsChecked属性更改为False时,仅在线687上的Trigger才会触发,但模板的初始状态未被检查。

尝试改变触发扭转行为:

<Trigger Property="IsChecked" Value="True"> 
    <Trigger.ExitActions> 
     <BeginStoryboard Storyboard="{StaticResource CheckedOff}" /> 
    </Trigger.ExitActions> 
    <Trigger.EnterActions> 
     <BeginStoryboard Storyboard="{StaticResource CheckedOn}" /> 
    </Trigger.EnterActions> 
</Trigger>