2011-04-25 64 views
1

我在看Prism Stocktrader RI,我可以看到使用代碼播放InTransition Storyboard。我想下面的XAML代碼: 開始在silverlight中加載事件的故事板

 <UserControl.Triggers> 
     <EventTrigger RoutedEvent="UserControl.Loaded"> 
      <BeginStoryboard Storyboard="{StaticResource InTransition}"/> 
     </EventTrigger> 
    </UserControl.Triggers>
但它給出的InitializeComponent下面的錯誤(即一個XamlParseException):
enter image description here
任何想法,爲什麼?

回答

3

我認爲觸發器在Silverlight中不可用。

您可以使用ControlStoryboardAction行爲調用一個故事板在XAML,如下所示(你需要Microsoft.Expression.Interactions.dll和System.Windows.Interactivity.dll),

xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity" 
xmlns:ei="http://schemas.microsoft.com/expression/2010/interactions" 

<i:Interaction.Triggers> 
    <i:EventTrigger EventName="Loaded"> 
     <ei:ControlStoryboardAction Storyboard="{StaticResource InTransition}"/> 
    </i:EventTrigger> 
</i:Interaction.Triggers> 

注意:您可以刪除EventName ='Loaded',因爲'Loaded'是此控件的默認事件。

+1

+1完全正確,觸發器是一種WPF概念。 OP提到的StockTrader RI應用程序確實是WPF。 ControlStoryBoardAction行爲是Silverlight的發展方向。 – bendewey 2011-04-25 16:11:28

0

通常對於這樣的錯誤有一個內部異常。請做「查看詳細信息」,並檢查我們。

錯誤通常意味着它不能正確解析資源,所以你可能需要看看什麼InTransition是(請後,如果這並不能幫助你)