Ik ben zojuist begonnen met C# (eigenlijk WFP applications in Blend, maar geprogrammeerd met C#).
Hierbij wil ik een tellertje maken dat elke seconde optelt.
Ik heb de volgende code: Plaatscode: 139455
Nu gaat het om de laatste struct (timerEvent) welke dus elke seconde wordt herhaalt als er op een knop is gedrukt die startProgram activeert.
Dit gebeurt ook (hij wordt dus opgeroepen om de seconde), maar de tekst in het tekstvak elapsed past hij niet aan.
Waarschijnlijk kan hij ze niet bereiken of zo omdat ik iets verkeerd heb toegewezen, maar zoals ik al zei begin ik net met C# dus zie ik dat nog niet.
oke, maar dan kan hij Forms niet vinden. Het type of de naam van de naamruimte Forms bestaat niet in de naamruimte System.Windows (ontbreekt er een assembly-verwijzing?)
To add a reference in Visual C#
1. In Solution Explorer, right-click the project node and click Add Reference.
2. In the Add Reference dialog box, select the tab indicating the type of component you want to reference.
3. Select the components you want to reference, and then click OK.
Oké, ik zie het.
Maar nu het volgende (hmm, php is minder moeilijk met fouten wat mij betreft ):
Error 1 'Application' is an ambiguous reference between 'System.Windows.Application' and 'System.Windows.Forms.Application' C:\Users\Stefan\Documents\gvss\gvss\gvss\MainWindow.xaml.cs 75 4 gvss
Error 2 'System.Windows.Application' does not contain a definition for 'DoEvents' C:\Users\Stefan\Documents\gvss\gvss\gvss\MainWindow.xaml.cs 75 16 gvss
Ik kan echter Application in Windows zelf niet vinden, maar misschien weet jij het?
Wat heb je bovenaan bij je usings staan? Als daar System.Windows.Application staat moet je proberen die weg te halen. Ik wil ook wel even naar je project kijken als je dit wilt sturen, zoja PM me maar even dan.
Staat er niet in denk ik.
Ik heb het project voor je even online gezet, maar ik ga nu wel slapen dus lees ik het morgen pas.
Bedankt voor je hulp tot zover .
Gebruik eens een System.Windows.Forms.Timer in plaats van een System.Timers.Timer! Ik zie aan de usings dat je een Windows Presentation Foundation applicatie aan het maken bent en niet de gewone WinForms. Een Timers.Timer kan geen Controls aanspreken op je Form aangezien deze op een andere Thread draait. Anders moet je de link naar je project ook even naar mij doorsturen.
Die Application.DoEvents() heb je dan niet nodig en had ook gevonden dat hij nu WPF weggehaald is. Het enige wat je ook nog even moet doen is de start button disablen als je hebt geklikt want als je nu meerdere keren klikt gaat de tijd sneller optellen .
Hehe, ik had het gisteren al gestest en toen liep ik tegen dit probleem aan en wist niet hoe ik het moest oplossen.
Even een vraagje over WPF (omdat het topic hier toch over gaat). Ik ka de .xaml files niet openen in designer mode in Visual Studio 2008, moet ik hier iets voor installeren? Ik kon niets vinden behalve .NET Framework 4, dus die heb ik geinstalleerd maar het werkt nog steeds niet.
@Ultimatum
Ik gebruik dus naast visual studio ook expression studio.
Ik weet niet of je student bent, maar dan kun je het (allebei) gratis downloaden via dreamspark.com.
Ik vind het persoonlijk fijner werken dan de designer mode in visual studio.
Edit:
Heéé. Het werkt!
Thx!
Abbas - 24/05/2010 14:31 (laatste wijziging 24/05/2010 14:35)
Crew .NET
Hm, raar. Ik heb Visual Studio 2008 Professional Edition en ik kan m'n XAML bestanden wel in design mode openen. Hetgeen je kan doen is de WPF Toolkit downloaden en installeren, misschien dat dat helpt. Op zich heeft het niets met .NET 4 te maken want WPF zit in ook al in versie 3.5 van het .NET Framework. Of anders eens controleren of je Service Pack 1 voor Visual Studio hebt geïnstalleerd, mijn versie is 9.0.30729.1 SP.
Anders kan je Expression Blend gebruiken, dit is een programma uit het Expression Studio - pakket om XAML te gaan designen. Het is gemakkelijk werken hiermee en je kan heel veel instellen / designen op een gemakkelijke manier maar als je alleen maar voor kleine aanpassingen de Design View nodig hebt is Visual Studio genoeg. Link naar de trials van Expression Studio: klik.