ボタンの背景を画像ソースに変更しようとしています。ページに移動するときにその画像をメモリにロードして、最初に表示されたときにちらつかないようにします。
Windows Phoneでは、次のように画像ソースを作成できました。
StreamResourceInfo resourceInfo = Application.GetResourceStream(uri);
BitmapImage bitmapSource = new BitmapImage();
// Avoid flicker by not delay-loading.
bitmapSource.CreateOptions = BitmapCreateOptions.None;
bitmapSource.SetSource(resourceInfo.Stream);
imageSource = bitmapSource;
Windows8ストアアプリで同様のことを試しました。
BitmapImage bitmapSource = new BitmapImage();
bitmapSource.CreateOptions = BitmapCreateOptions.None;
bitmapSource.UriSource = uri;
imageSource = bitmapSource;
しかし、同じ問題が発生します。ボタンにはすでに背景とは異なる画像があり、特定のイベントで新しい背景に変更したいと思います。しかし、ソースを変更すると、目立ったちらつきが見られます。これは、画像ソースが2回目に変更されたときに問題が解消されるため、画像がまだメモリにないためだと思います。
誰かが解決策を知っていますか?どういうわけかこの画像の読み込みを強制する必要があります。
ありがとう!