2013-12-19 4 views
0

Я хочу снять скриншоты всех окон, связанных с приложением, и позволить пользователю редактировать их. Однако я не уверен, как преобразовать окно в растровое изображение.Как преобразовать окно WPF в растровое изображение?

Я хочу сделать что-то вроде этого ...

WindowCollection handles = Application.Current.Windows; 
List<Image> windowList = new List<Image>(); 
foreach (Window window in handles) 
{ 
do something here to turn each window into a bitmap 
windowList.Add(bitmapFromWindow) 
} 

Я не нашел вопросы, связанные, но ничего, что ответ на мой вопрос. Если вы найдете какие-либо связанные ресурсы, пожалуйста, напишите.

+1

Вы хотите сделать скриншот всего экрана? Просто программа? Все открытые окна индивидуально? Вы хотите сохранить их на диск и открыть их в редакторе по умолчанию пользователя или открыть их внутри своей программы где-нибудь? –

ответ

3

Вы можете использовать RenderTargetBitmap

или взглянуть на этот один:

http://blogs.msdn.com/b/swick/archive/2007/12/02/rendering-ink-and-image-to-a-bitmap-using-wpf.aspx

+0

Ничего себе, я не хочу говорить слишком рано, но я думаю, что это именно то, что я ищу и чего хочу достичь. Я хочу создать растровое изображение, чтобы я мог разрешить пользователю его редактировать. В конечном итоге пользователь будет рисовать по всему окну и отправлять их в http POST. – Adam

+0

Да, вы можете пойти и посмотреть на функции Bitmap ... Если бы я мог помочь вам оставить голосование и «лучший ответ»;) –

Смежные вопросы