Я использую winforms с xna. Все работает до сих пор, за исключением чертежа. Это начальный код, который я имел:Экран, не освежающий проект XNA
protected override void Draw()
{
GraphicsDevice.Clear(Color.CornflowerBlue);
spriteBatch.Begin();
tileSheet.Draw(spriteBatch);
foreach (Image img in selector)
img.Draw(spriteBatch);
spriteBatch.End();
}
я поставил точку останова, и это вызов метода рисования, но ничего не меняется на экране, но когда я делаю это:
protected override void Draw()
{
GraphicsDevice.Clear(Color.CornflowerBlue);
spriteBatch.Begin();
tileSheet.Draw(spriteBatch);
foreach (Image img in selector)
img.Draw(spriteBatch);
spriteBatch.End();
Invalidate();
}
Это работает! но проблема в том, что все замораживается и, похоже, попадает в цикл Invalidate. Но почему последний работает, но не бывший? Я работаю над этим часами, и я не могу понять, что пойдет не так: /.
Я чувствую, что это что-то простое, но я не могу обвести вокруг себя голову.
Я также попробовал обновление и обновление, и они тоже не работают.
Возможный дубликат [Invalidate не загружается, если не повторяется? (Winforms and Xna)] (http://stackoverflow.com/questions/18907657/invalidate-doesnt-load-unless-repeated-winforms-and-xna) – pinckerman