Example #1
0
        private void GraphicsInteropPanel_Loaded(object sender, RoutedEventArgs e)
        {
            RenderFrame ParentRenderfarame = FindParentRenderFrame();

            if (ParentRenderfarame == null)
            {
                Dispatcher.BeginInvoke(new Action(() =>
                {
                    Renderframe        = new OffscreenRenderFrame();
                    Renderframe.Height = (int)ActualHeight;
                    Renderframe.Width  = (int)ActualWidth;
                    Renderframe.RenderTargetChanged += Renderframe_RenderTargetChanged;
                    Renderframe.Initialize();
                    Clear            = Renderframe.CreateDrawCommnad2D <Clear2DCommand>();
                    Clear.clearColor = SharpDX.Color.White;
                    image            = new System.Windows.Controls.Image();
                    image.Width      = ActualWidth;
                    image.Height     = ActualHeight;
                    imageSource      = new GraphicsInteropImageSource();
                    image.Source     = imageSource;
                    SizeChanged     += GraphicsInteropPanel_SizeChanged;
                    System.Windows.Media.CompositionTarget.Rendering += CompositionTarget_Rendering;
                }));
            }
        }