0

Windows Phone 7.5/Silverlight アプリを持っています。

ほとんどのページで何らかの意味で複製しているコードがいくつかあります。コードの複製の例:

1: OnNavigatedTo - アニメーションの停止、BackStack のクリア、イベント ハンドラーの追加 (各ページで同じもの) など。

2: OnNaviateFrom - アニメーションを停止して null に設定し、イベント ハンドラーを削除し、すべてのサウンドを停止し、サウンドエフェクトとインスタンスを破棄します。

3: OnInitializeComponent - SoundEffects をセットアップしました

4: 画像をクリックすると、SoundEffects が再生されます

では、すべてのページでコードを複製する必要がないようにするには、どうすればよいでしょうか?

ある種の基本クラスまたはページを考えていましたか?

どんなアイデアでも本当に感謝しています。ありがとう。

4

1 に答える 1

0

各ページで同じことをしている場合、基本 Page クラスは完全に理にかなっています。

public class MyPhoneApplicationPage : PhoneApplicationPage
{
    public MyPhoneApplicationPage()
    {
        this.Loaded += OnLoaded;
    }

    protected override void OnNavigatedFrom(System.Windows.Navigation.NavigationEventArgs e)
    {
        base.OnNavigatedFrom(e);
        // Do Stuff
    }

    protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
    {
        base.OnNavigatedTo(e);
        // Do Stuff
    }

    private void OnLoaded(object sender, RoutedEventArgs routedEventArgs)
    {
        //set up my SoundEffects
    }
}
于 2012-06-26T19:20:53.343 に答える