我在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的设计器窗口中出现以下错误:



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

最佳答案

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

您需要使用定义了属性/事件的类名,以使设计者可以接受它(在运行时没有什么区别,因为RadioButton是我所说的ToggleButton,但是设计者不是真正的编译器)。

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

09-25 16:50