Элемент управления Windows Forms, размещенный в WPF, исчезает при изменении размера - PullRequest
0 голосов
/ 28 июня 2018

Я добавляю элемент управления Windows Forms в окно WPF и рисую его графику. Все вроде бы нормально, пока я не изменю размеры окна. После изменения размера нарисованная графика исчезает. Я что-то там не так делаю?

    public MainWindow()
    {
        InitializeComponent();
        host.Child = img;
        this.Content = host;
    }
    private void Window_Loaded(object sender, RoutedEventArgs e)
    {
        generatePoints();
        AddNewPointOnGraphics((int)points[index].X, (int)points[index].Y, 0);
    }

    private void rendered()
    {
        if (index % 2 == 0)
        _firstPointInLine = true;
        if (index < 10000)
        AddNewPointOnGraphics((int)points[index].X, (int)points[index].Y, 0);
        index++;
    }
    public void AddNewPointOnGraphics(int pX, int pY, uint time)
    {
        if (_firstPointInline)
        {
            firstpoint = img.PointToClient(new System.Drawing.Point(pX, pY));
            _firstPointInLine = false;
        }
        secondpoint = img.PointToClient(new System.Drawing.Point(pX, pY));
        g = img.CreateGraphics();
        g.DrawLine(new System.Drawing.Pen(System.Drawing.Brushes.Blue, 2), (float)firstpoint.X, (float)firstpoint.Y, (float)secondpoint.X, (float)secondpoint.Y);

        firstpoint = img.PointToClient(new System.Drawing.Point(pX, pY));
        Dispatcher.BeginInvoke(DispatcherPriority.Input, new Action(delegate
        {
            rendered();
        }));
    }


    public class myImage : System.Windows.Forms.Control
    {
        public myImage()
        {
            this.SetStyle(ControlStyles.DoubleBuffer |
            ControlStyles.UserPaint |
            ControlStyles.AllPaintingInWmPaint,
            true);
        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...