2010-11-28 12 views
3

Im Grunde versuche ich eine Reihe von Linien auf einem Canvas-Objekt mit einer kurzen Pause zwischen jeder gezeichneten Linie zu zeichnen. Leider, wie ich es jetzt habe, macht es Pause, aber ich sehe keinen der Zwischenschritte, das heißt, ich sehe es vor und nach dem Zeichnen, aber nichts dazwischen. Ich habe System.Timers.Timer ausprobiert, aber es gab mir einen Fehler, der besagt, dass die Zeichenfläche einem anderen Thread gehört. Wie kann ich das zur Arbeit bringen?Festlegen eines Intervalls zwischen Zeichnungen auf einem Canvas (C#)

Antwort

4

in der Toolbox in VS zu finden haben Sie versucht, Ihre Zeichnung Sequenz in einem Storyboard setzen? Sie können sie nach Belieben stoppen/starten oder sie einfach so einstellen, wie Sie möchten.

+0

Ich hatte keine Ahnung von Storyboards. Das sieht so aus als würde es funktionieren. Vielen Dank! – marsolk

+0

@tocapa kein Problem! –

0

Steuerungen in Winforms spielen nicht gut mit Threads. Es gibt eine Timer-Klasse, die speziell für das Arbeiten mit Winform-Steuerelementen entwickelt wurde.

http://msdn.microsoft.com/en-us/library/system.windows.forms.timer.aspx

Es kann

+0

wpf, nicht winforms :) –

+0

Ich habe versucht, 'mit System.Windows.Forms hinzuzufügen;' meiner Datei aber es wird gesagt, dass Forms ist kein Teil von System.Windows. Was ist los? – marsolk

+0

Sie müssten einen Verweis auf die System.Windows.Forms-Assembly hinzufügen, um die Klassen zu finden. Tun Sie dies jedoch nicht, wie Muad sagte, Sie verwenden WPF, die insgesamt einen anderen Satz von Assemblys im Vergleich zu WinForms verwendet, am besten nicht zu kreuzen (außer Sie haben einen guten Grund) – Guy

Verwandte Themen