1

C# XAML Metro Image 動的ソースに関する以前の質問があります

すべて問題ありませんが、3 つの「バッファ」を使用して切り替えると、ちらつきが見られます。

public Dictionary<int, BitmapImage>[] SpritesBuffer = new Dictionary<int,BitmapImage>[3];

(...)

image.Source = SpritesBuffer[0][0]; //first time use

(...)

timer = new DispatcherTimer();
timer.Interval = new TimeSpan(0, 0, 0, 0, 16);
timer.Tick += SwitchImageSource;

timer.Start();

SwitchImageSource() では、foreach を使用して 1. バッファーからイメージをループし、いくつかのアクションでバッファーを 2. に切り替え、バッファー 2. からイメージをループします。

しかし、バッファ 1、2、および 3 をすでにループしたときは、すべて問題なく、画像がちらつきません。しかし、最初のループではちらつきが見られます。

次を使用して画像を表示する前にソースを切り替えようとしました:

foreach (Dictionary<int, BitmapImage> dic in SpritesBuffer)
            {
                foreach (KeyValuePair<int, BitmapImage> keyVal in dic)
                {
                    image.Source = keyVal.Value;
                }
           } 

しかし、うまくいきません。

どうすればこの問題を解決できますか? ありがとうございました!

4

0 に答える 0