2010-03-30 206 views
6

我正在使用WPF下面的标记:如何绑定WPF中单选按钮的Checked事件?

<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的设计窗口下面的错误:

值“单选按钮.Checked'不能被 分配给属性'RoutedEvent'。 无效的事件名称。

任何想法,为什么,以及如何解决这一问题?

回答

3

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

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

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

相关问题