绘制的矩形仅出现在我的userControl的最后一个实例上

| 我有一个userControl,其中有一些以编程方式绘制的矩形。我在表单上需要该userControl的几个实例(请参见图片)。问题在于只有最后一个实例才会显示绘制的形状! 我想这与绘图表面或Paint事件处理程序有关 如果有帮助,这里是我在控件中使用的一些代码:
private void MyUserControl_Paint(object sender, PaintEventArgs e)
{
    showHoraireMaitresse();
    Rectangle rec = showDisponibilités();

    var b = new SolidBrush(Color.FromArgb(150, Color.Blue));
           e.Graphics.FillRectangle (b, rec);
    showOccupation();
}

   private void showHoraireMaitresse()
    {
        heureDebut = 8;
        for (int i = 0; i < 14; i++)
        {
            //Label d\'heure -> This shows just fine
            addLabel(i, heureDebut);

            //Rectangles d\'heure -> This shows only in last instance
            var rectangle = new Rectangle(180 + i * largeurDUneHeure, 14, largeurDUneHeure, 30);
            surface.DrawRectangle(defaultPen, rectangle);
        }
        addLabel(14, heureDebut);
    }
谢谢!     
已邀请:
如果没有更多信息,我将猜测“表面”是静态的。 遍历OnPaint并检查正在绘制的控件以及\'surface \'的边界。也许所有控件都绘制相同的精确矩形。     

要回复问题请先登录注册