Помогите с рисованием изображений GDI+

Недавно я сделал свой первый шаг в GDI+ и пытаюсь нарисовать изображение из растрового изображения. Код у меня такой:

using System.Drawing;
using System.Drawing.Drawing2D;

namespace Windowstuffs
{
    class AnimEngine : Form
    {
        public Graphics X;
        public Bitmap Y = new Bitmap(/* File Path */);

       void draw(object sender, PaintEventArgs e)
        {
            Bitmap Y = new Bitmap(/* File Path */);
            e.Graphics.DrawImage(Y, 0, 0);
            return;
        }

       public static void Main()
        {

            AnimEngine f1 = new AnimEngine();
            Application.Run(f1);
            f1.Paint += new PaintEventHandler(f1.draw);
            f1.Refresh();
            return;
        }

    }
}

Компилируется нормально, но ничего не рисует. Все остальное полностью функционально, и после поиска в MSDN и различных учебниках я так и не могу найти, что я сделал не так.

Спасибо за помощь.


person Edward Black    schedule 30.05.2011    source источник


Ответы (1)


public static void Main()
{

    AnimEngine f1 = new AnimEngine();
    f1.Paint += new PaintEventHandler(f1.draw);
    Application.Run(f1);
    f1.Refresh();
    return;
}

Просто поместите строку подписки на событие над строкой Application.Run(f1) :)

person Eranga    schedule 30.05.2011
comment
Спасибо, но как мне вызвать событие Paint после первой загрузки формы? - person Edward Black; 30.05.2011
comment
вы можете вызвать метод Invalidate элемента управления. [ссылка]msdn.microsoft.com/en-us/library/598t492a.aspx - person Eranga; 30.05.2011