Как вы уже сказали, BitmapSource не поддерживает несколько кадров.Возможно, можно было бы вмешаться в момент декодирования TIFF и преобразовать изображение из каждого кадра:
TiffBitmapDecoder decoder = new TiffBitmapDecoder(...) // use stream or uri here
System.Drawing.Image[] images = new System.Drawing.Image[decoder.Frames.Count];
for (int i = 0; i < decoder.Frames.Count; i++)
{
// use your converter function here
images[i] = ConvertBitmapSourceToImage(decoder.Frames[i]));
}
Я не тестировал приведенный выше код, извините за любые недостатки.1004 *