나는 그 순간 생각을 가지고 노는 중이며 벽돌 벽에 부딪혔다. 내가 VisualBrush를 사용하여 이미지에 그 컨트롤을 저장하려고하는데, 시각적 컨트롤 (DevExpress 차트 컨트롤을 정밀하게)을 만들기 위해 콘솔 앱을 사용하고 있습니다. 그러나 컨트롤 (가정)이 작동하지 않습니다. 화면에 그려지지 않습니다.렌더링되지 않은 컨트롤을 사용하는 비주얼 브러시?
내가 아래에 코드를 입력 했으므로 현재 내가 어디에 있는지 알 수 있습니다. 아무도 내가 어쩌면이 컨트롤을 이미지 (이상적으로 jpg로 저장할 수 있지만, 아무 것도 할 것이다 ...) 콘솔 앱을 사용하여 어떻게 알 수 있습니까? 난 정말 ... 그냥 저장 할 수도 밀리 초에 화면에 렌더링하고 싶지 않습니다
static void sl_CreateDetail(FrameworkElement chartControl1, CreateAreaEventArgs e)
{
var brush = new VisualBrush(chartControl1);
var visual = new DrawingVisual();
DrawingContext context = visual.RenderOpen();
context.DrawRectangle(brush, null,
new Rect(0, 0, chartControl1.ActualWidth, chartControl1.ActualHeight));
context.Close();
var bmp = new RenderTargetBitmap((int)chartControl1.ActualWidth,
(int)chartControl1.ActualHeight, 96, 96, PixelFormats.Pbgra32);
bmp.Render(visual);
e.Data = bmp;
}
나는 Measure/Arrange를했는데 효과가 없었습니다. STA 스레드는 이미 제자리에 있습니다. 작은 데모를 위해 뭔가를 얻으려면 신속하게 접근 방식을 변경해야했습니다. 내 접근 방식을 다시 전환하고 최대한 빨리 전체 제안을 시도해 보겠습니다. – Faraday