2011-08-01 75 views
1

我想使用c#將xaml畫布轉換爲png圖像。我使用了第二篇帖子here中描述的RenderTargetBitmap。如果想要轉換的xaml顯示在窗口或頁面中,並且您可以在屏幕上實際看到它,它會很好地工作。但是,如果窗口關閉或隱藏,或者畫布不是窗口/頁面/框架的子項,則會生成空白圖像。有誰知道爲什麼會發生這種情況,或者如何使其發揮作用?使用RenderTargetBitmap將xaml畫布轉換爲png的空白圖像

回答

1

我不能確定,但​​它可能是WPF通過不呈現任何目前不在屏幕上的東西來節省時間,因此當您從該對象的呈現目標中獲取位圖時,它尚未呈現,因此它是空白的。

我會建議把它放在屏幕上,以便在捕獲的過程中移除它。如果物體很小,它甚至可能出現並消失在閃爍之中。

+2

非常感謝!我甚至沒有呈現!但也有一個解決方案沒有顯示它:http://stackoverflow.com/questions/1080375/force-rendering-of-a-wpf-control-in-memory –