如何在WPF中绑定单选按钮的Checked事件?

时间:2010-03-30 06:43:21

标签: wpf data-binding eventtrigger

我在WPF中使用以下标记:

    <StackPanel.Triggers>
        <EventTrigger RoutedEvent="RadioButton.Checked" SourceName="xmlRadioButton">
            <EventTrigger.Actions>
                <BeginStoryboard Storyboard="{StaticResource ShowXmlPanel}"/>
            </EventTrigger.Actions>
        </EventTrigger>
        <EventTrigger RoutedEvent="RadioButton.Checked" SourceName="adiRadioButton">
            <EventTrigger.Actions>
                <BeginStoryboard Storyboard="{StaticResource ShowAdiPanel}"/>
            </EventTrigger.Actions>
        </EventTrigger>
    </StackPanel.Triggers>

虽然这在我运行代码时工作正常,但我在VS 2008的设计器窗口中收到以下错误:

  

值'RadioButton.Checked'不能   分配给属性'RoutedEvent'。   事件名称无效。

知道为什么,以及如何解决这个问题?

1 个答案:

答案 0 :(得分:3)

RadioButtonToggleButton。设计人员确实支持附加的ToggleButton属性,但不支持RadioButton属性(当然,RadioButton标记除外)。

你需要使用为设计者定义属性/事件的类名来接受它(认为在运行时没有区别,因为RadioButtonToggleButton,正如我所说,但是设计师不是真正的编译器。)

因此,在您的情况下,请使用<EventTrigger RoutedEvent="ToggleButton.Checked ..."; - )