1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
Window window = new Window();
window.Width = 500;
window.Height = 500;
StackPanel panel = new StackPanel();
window.Content = panel;
TextBox textbox = new TextBox();
textbox.Text = "Test";
panel.Children.Add(textbox);
window.Show();
VisualBrush visualBrush = new VisualBrush(window);
Rect drawingRect = new Rect(window.Left, window.Top, window.Width, window.Height);
DrawingVisual drawingVisual = new DrawingVisual();
DrawingContext drawingContext = drawingVisual.RenderOpen();
drawingContext.DrawRectangle(visualBrush, null, drawingRect);
drawingContext.Close();
RenderTargetBitmap bitmap = new RenderTargetBitmap((int)window.Width, (int)window.Height, 96, 96, PixelFormats.Pbgra32);
bitmap.Render(drawingVisual);
using (FileStream stream = new FileStream("c:/tmp/test.bmp", FileMode.Create))
{
BmpBitmapEncoder encoder = new BmpBitmapEncoder();
encoder.Frames.Add(BitmapFrame.Create(bitmap));
encoder.Save(stream);
} |
Partager