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

6
我将使用以下标记在WPF中:

我在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个回答

3

RadioButton 是一个 ToggleButton。设计师支持附加的 ToggleButton 属性,但不支持 RadioButton 的属性(当然除了在 RadioButton 标签内)。

您需要使用定义属性/事件的类名称,以便设计师接受它(虽然运行时没有区别,因为如我所说,RadioButton 是一个 ToggleButton,但设计师不是一个真正的编译器)。

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


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接