はい、タイマーが機能します。 WinformsプロジェクトでXNAを使用する方法を示したMicrosoftの例で使用された、巧妙なトリックです。それはApplication.Idleイベントを使用しています。
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
pictureBox1.Paint += new PaintEventHandler(pictureBox1_Paint);
Application.Idle += new EventHandler(Application_Idle);
this.FormClosed += delegate { Application.Idle -= Application_Idle; };
}
private void Application_Idle(object sender, EventArgs e) {
pictureBox1.Invalidate();
}
int cnt;
void pictureBox1_Paint(object sender, PaintEventArgs e) {
cnt++;
e.Graphics.DrawString(cnt.ToString(), this.Font, Brushes.Black, 0, 0);
}
}
私はちらつきを隠すために、パネルの代わりにピクチャボックスを使用し、PBはDoubleBufferedプロパティがオンになっています。 XNAにはあまり関係しません。 vsyncを使用してもafaikは動作しません。あなたはたぶんその例をチェックアウトするべきです、私はそれを試したときに裂けることなく完全に滑らかだった "回転三角形"。それについてThis threadが話します。