2012-04-20 71 views
0

我在彈出窗口中有一個故事板動畫,我希望它在應用程序的每個頁面上。我該如何做到這一點,而不需要將動畫粘貼到每個XAML以及所有用於控制動畫的代碼隱藏邏輯中。我也有按鈕,應該在每個頁面以及某些位置。有沒有比重複代碼更好的方式來做到這一點?我已經從PhoneApplicationPage繼承,但只處理代碼隱藏的東西,沒有XAML佈局。繼承XAML佈局/主頁面

回答

1

您可以爲動畫創建UserControl而不是複製代碼,在其他用戶控件或頁面中調用此用戶控件。

要添加用戶控件右鍵單擊您的項目然後添加新項目然後添加Silverlight用戶控件,相應地命名您的控件,例如「AnimationUserControl」,最後單擊添加。難道在這個新的用戶控件的動畫作品,你投射到用戶控制,其中u都是這樣呼籲例如AnimationUserControl在MainPage.xaml中來調用其他控件這個新的用戶控件必須添加引用:

<UserControl x:Class="Com.Softechww.Controls.Silverlight.Scheduler.Scheduler" 
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
xmlns:local="clr-namespace:ProjectNameSpace" Width="800" Height="450" > 

使用「xmlns:local」添加新行,該值引用了項目的根目錄,可以通過右鍵單擊Silverlight下的Visual Studio項目文件然後選擇默認命名空間來找到項目命名空間。

現在只需下面把它稱爲用戶控制像這樣:

<Grid x:Name="LayoutRoot"> 
    <local:AnimationUserControl/> 
</Grid> 

它應該工作。