C#清除油漆

时间:2013-09-25 10:15:38

标签: c# .net winforms

我用this.Invalidate();清楚,但都清楚。我只需要清楚我早些时候画过。

            private void AfyTextBox_Paint(object sender, PaintEventArgs e)
        {

            if (afytransparentTextBox.BackColor.A != 255 || afytransparentTextBox.BackColor.B != 255 || afytransparentTextBox.BackColor.G != 255 || afytransparentTextBox.BackColor.R != 255)
            {
                path = RoundedRectangle.Create(1, 1, this.Width - 7, this.Height - 7, 2); // Draw around
                e.Graphics.DrawPath(new Pen(afytransparentTextBox.BackColor), path);
            }
            else
            {
                //Here I need to clean that I drew earlier.( Draw around)
            }
}

2 个答案:

答案 0 :(得分:0)

您可以试试这个method

<强> Graphics.Clear();

答案 1 :(得分:0)

你不能从表面“脱毛”。您必须清除并重新绘制要显示的内容。通常使用Invalidate方法告诉组件重绘自己。你可以有一个布尔标志来控制你的临时覆盖框是否被绘制。