C# 按TAB键时出现面板错误

C# 按TAB键时出现面板错误,c#,winforms,C#,Winforms,我有一个画板,当我按Tab键时,一切都消失了 我也有一个文本框,我试着通过调用PreviewKeyDown事件来查看是否按Tab键,并在那里进行检查和重新绘制所有内容,但它不起作用 我做错了什么 这是我在该面板上绘制的方式: private void PuneFundal(Graphics g) { g.Clear(Color.FromArgb(150, 124, 92)); } private void DeseneazaLinie(Graphics g, Point p1, Po

我有一个画板,当我按Tab键时,一切都消失了

我也有一个文本框,我试着通过调用PreviewKeyDown事件来查看是否按Tab键,并在那里进行检查和重新绘制所有内容,但它不起作用

我做错了什么

这是我在该面板上绘制的方式:

private void PuneFundal(Graphics g)
{
 g.Clear(Color.FromArgb(150, 124, 92));
}

    private void DeseneazaLinie(Graphics g, Point p1, Point p2)
{
     Pen p = new Pen(Color.Black);
     g.DrawLine(p, p1, p2);
}

private void TrasareLinii(Graphics g)
{
     for (int i = 6, k = 0; k < 20; i += 16, k++)
         DeseneazaLinie(g, new Point(5, i), new Point(309, i));
     for (int i = 6, k = 0; k < 20; i += 16, k++)
         DeseneazaLinie(g, new Point(i, 5), new Point(i, 309));
}

private void Start_game()
{
     Graphics g = m_off_joc_nou_panel.CreateGraphics();
     PuneFundal(g);
     TrasareLinii(g);
}

你能展示一个失败的代码示例吗?我已经编辑了你的标题。请看,如果共识是否定的,他们就不应该。@edtheprogrammarguy这就是我不知道为什么它会抹去一切。它会删除所有内容,甚至在上一页我按TAB键时也会删除。您可能想看看是否可以创建一个复制此问题的小示例应用程序。如果没有发生,请慢慢编写代码,看看是什么导致了问题。@JeffBridgman当我创建图形时,问题就出现了,所以我决定用一个pictureBox来更改面板,并从该图像创建了一个图形,每次更改图片时,我都使用以下代码:image img=pictureBox1.image;Graphics g=Graphics.FromImageimg//这里我改变了图片pictureBox1.Image=img;很抱歉这样看,但我不知道如何安排此代码
using System.Drawing; //for Graphics and Images and the tool to paint

 public Form1()
{
    Image img = new Bitmap(pictureBox1.Width, pictureBox1.Height);
    pictureBox1.Image = img;
}

private void Start_game()
{
    Image img = pictureBox1.Image;
    Graphics g = Graphics.FromImage(img);

    // here you paint what you whant

    pictureBox1.Image = img;
}