0

有一个 SilverlightUserControl有一个MouseLeftButtonUp事件。在 xaml 中,我为此事件添加了两个触发器。Silverlight xaml-parser 将以何种顺序解析并附加这些触发器,我可以确定上面的触发器将首先调用吗?

...
    <i:Interaction.Triggers>
      <i:EventTrigger EventName="MouseLeftButtonUp">
         <i:InvokeCommandAction Command="{StaticResource someCommand}"/>
         <AttachedBehaviors:SomeBehavior Parameter="Apple"/>
      </i:EventTrigger>
    </i:Interaction.Triggers>
...


更新:在 WPF 中发现连接问题,触发器的顺序是否重要?其中说:

WPF 正在按声明的顺序处理触发器。

希望,Silverlight 的行为完全相同。

4

1 回答 1

2

即使定义了订单,我也不会这样做。将您想要的订单添加到命令的处理程序中。

void someCommand_Executed()
{
    DoFirstThing();
    DoSecondThing();
}

从长远来看,这种代码会造成痛苦,因为顺序不容易执行,并且您正在创建两个方法之间的依赖关系。

于 2012-01-12T11:05:46.790 回答