BitmapImage.Play メソッド

定義

アニメーション化されたイメージのアニメーションを開始します。

public:
 virtual void Play() = Play;
void Play();
public void Play();
function play()
Public Sub Play ()

Windows の要件

デバイス ファミリ
Windows 10 Anniversary Edition (10.0.14393.0 で導入)
API contract
Windows.Foundation.UniversalApiContract (v3.0 で導入)

呼び出す前に、ApiInformation.IsMethodPresent を使用して Play メソッドの存在をチェックする方法を次に示します。

if (ApiInformation.IsMethodPresent("Windows.UI.Xaml.Media.Imaging.BitmapImage", "Play"))
{
    imageSource.Play();
}

この例では、アニメーション GIF の使用方法を示します。 ボタンを使用すると、ユーザーはアニメーションを開始または停止できます。 再生を切り替えるために Play メソッドと Stop メソッドのどちらを呼び出すかを判断するには、IsPlaying プロパティがオンになっています。

この例では、バージョン アダプティブ コードを使用して、すべてのバージョンのWindows 10で実行できます。 この場合、IsPlaying プロパティが存在すると、Play メソッドと Stop メソッドも存在するため、追加の API チェックは必要ありません。

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
    <Image>
        <Image.Source>
            <BitmapImage x:Name="imageSource"
                         UriSource="Assets/example.gif"/>
        </Image.Source>
    </Image>

    <AppBarButton x:Name="playButton"
              Icon="Play"
              Click="playButton_Click"/>
</Grid>
// Play or stop the animated bitmap.
void playButton_Click(object sender, RoutedEventArgs e)
{
    if (ApiInformation.IsPropertyPresent("Windows.UI.Xaml.Media.Imaging.BitmapImage", "IsPlaying") 
        && imageSource.IsPlaying == true)
    {
        playButton.Icon = new SymbolIcon(Symbol.Play);
        imageSource.Stop();
    }
    else
    {
        playButton.Icon = new SymbolIcon(Symbol.Stop);
        imageSource.Play();
    }   
}

注釈

バージョン 1607 Windows 10以降、XAML Image 要素はアニメーション GIF 画像をサポートしています。 イメージ ソースとして BitmapImage を使用する場合は、BitmapImage API にアクセスして、アニメーション GIF イメージの再生を制御できます。 詳細については、 BitmapImage クラスの解説と アニメーション GIF 再生サンプルの「アニメーション画像」セクションを参照してください。

アニメーション化されたビットマップの再生を制御するには、Play メソッドと Stop メソッドと共に IsPlaying プロパティを使用します。

互換性に関するメモ

アプリがバージョン 1607 より前のWindows 10のリリースで実行されている場合は、ApiInformation クラスを使用して、このメソッドが存在するかどうかをチェックしてから使用する必要があります。 詳細については、「 バージョン アダプティブ コード: 以前のバージョンとの互換性を維持しながら新しい API を使用する」を参照してください。

適用対象