WindowsFormHost绘制事件未触发

我在WPF应用程序中有一个带有WindowsFormHost的面板。 最终我需要能够点击并绘制点数。 我让它完全在一个单独的WinFormforms中工作……但由于某种原因,当调用Invalidate()时,paint事件根本不会触发! 点击事件肯定会在点击时出现消息框时触发。 尽管如此,并没有偷看油漆。 无法弄清楚为什么我的生活……这是代码。

XML:

                                                                                         

C#

 private void wfSurface_Paint(object sender, System.Windows.Forms.PaintEventArgs e) { Graphics g; g = wfSurface.CreateGraphics(); epanet epa = epanet.GetInstance(); SolidBrush s = new SolidBrush(System.Drawing.Color.Blue); g.FillEllipse(s, Convert.ToInt32(epa.xCord), Convert.ToInt32(epa.yCord), 50, 50); g.FillEllipse(s, 400, 400, 500, 500); MessageBox.Show("paint event fired"); } private void wfSurface_MouseClick(object sender, System.Windows.Forms.MouseEventArgs e) { epanet epa = epanet.GetInstance(); epa.xCord = eX; epa.yCord = eY; MessageBox.Show("xCord is: " + eXToString()); wfSurface.Invalidate(); } 

编辑:

为了进一步检查绘制事件是否是问题,我添加了行g.FillEllipse(s,400,400,400,400); 进入click事件并成功绘制椭圆。

WPF的人不多,但我的猜测是添加这个: