代码之家  ›  专栏  ›  技术社区  ›  nullDev

如何为wpf中的单选按钮绑定选中的事件?

  •  6
  • nullDev  · 技术社区  · 14 年前

    我在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 回复  |  直到 14 年前
        1
  •  3
  •   Aurelien Ribon    14 年前

    RadioButton 是一个 ToggleButton . 设计器确实支持附加的 按钮开关 属性,但不是 单选按钮 一个(除了在 单选按钮 当然是标签)。

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

    所以在你的情况下,使用 <EventTrigger RoutedEvent="ToggleButton.Checked ..." ;-)