head.WriteLine()

Dienstag, Dezember 19, 2006

Kaxaml rockt!

Robby Ingebretsen hat mit Kaxaml einen wirklich guten XAML-Editor gebaut. Die aktuelle Version 0.2 enthält Features wie Auto tag completion, XAML Snippets, einen Color Picker, Find & Replace, sowie eine Undo-Funktion. Ein Muß für jeden XAML Pad-Benutzer!

Nähere Infos hier, Download hier.

Montag, Dezember 18, 2006

Artikel in der aktuellen dotnetpro

In der aktuellen Ausgabe der dotnetpro (01/2007) ist mein Artikel „Neue Klassen, optimierte Verfahren: .NET 2.0: Neuerungen für Komponentenentwickler“ erschienen.

Auszug aus dem Abstract:
Bei der Fülle neuer Features im .NET Framework 2.0 sind einige Neuerungen fast unbemerkt geblieben. Doch gerade im Windows.Forms-Namespace haben sich teilweise tiefgreifende Änderungen vollzogen, von denen insbesondere Komponentenentwickler profitieren können. Jörg Neumann stellt die wichtigsten Änderungen vor und zeigt welche Vorteile die neuen Konzepte haben.

Sonntag, Dezember 17, 2006

WPF/E: Limitationen bei Event Triggern

In WPF/E werden zum Animieren von Elementen - ebenso wie in WPF - Event Trigger verwendet. Diese reagieren bei bestimmten Ereignissen und führen daraufhin entsprechende Animationslogik aus.

Die aktuelle CTP unterstützt jedoch nur das Loaded-Event, was die Möglichkeiten deutlich einschränkt. Wenn Sie beispielsweise eine Animation starten wollen, wenn der Benutzer auf ein Element klickt, so können Sie diese zwar per Java Script starten, sie wird jedoch beim initialen Laden der Seite bereits ausgeführt.

Ein Workaround besteht darin, die Animation dynamisch hinzuzfügen. Hierbei deklarieren Sie den Event Trigger nicht in Ihrer XAML-Datei, sondern erzeugen ihn zur Laufzeit per Java Script.

var xaml = "<EventTrigger>";
xaml = xaml + " <EventTrigger.Actions>";
xaml = xaml + " <BeginStoryboard>";
xaml = xaml + " <Storyboard x:Name='imageAnimation'>";
xaml = xaml + " <DoubleAnimation ...";
xaml = xaml + " ...";
xaml = xaml + " </Storyboard>";
xaml = xaml + " </BeginStoryboard>";
xaml = xaml + " </EventTrigger.Actions>";
xaml = xaml + "</EventTrigger>";

var wpfeControl = document.getElementById("wpfeControl1");
var canvas = wpfeControl.findName("rootCanvas");
var trigger = wpfeControl.createFromXaml(xaml);
canvas.Children.Add(trigger);

Bleibt zu hoffen, dass dieser Workaround zur finalen Version überflüssig wird.

Donnerstag, Dezember 07, 2006

WPF/E-Runtime: What's in the box?








































Nach der Installation der WPF/E-Runtime für Windows hat mich zuerst interessiert, was da eigentlich alles auf meinen Rechner kommt. Daher habe ich den Setup-Satz mit Oraca einmal näher untersucht. Heraus kam die folgende Dateiliste. Schon beeindruckend, was eine Handvoll COM-Komponenten (!) zu leisten im Stande ist:
DateiBeschreibungGröße
agctrl.dllIE Plug-In101.136
npag.dllFirefox Plug-In46.352
agcore.dllCore Library660.240
agwin.dllWindows Library67.344
agcodec.dllCodec Library1.856.784
agxml.dllXML Library103.184
Gesamtgröße2.835.040

Noch mehr WPF/E-Ressourcen

Im Moment sprießen die Blogs und Sites zum Thema WPF/E nur so aus dem Boden. Unter anderem erklärt Joe Stegman WPF/E auf Channel 9. Weitere Videos zu WPF/E finden Sie hier und hier.

Darüber hinaus gibt es auf Channel 9 den "WPF/E Playground". Hier wurden im wesentlichen die Beispiele aus dem WPF/E-Sample Pack online gestellt.

Wie man WPF/E elegant in seine ASP.NET-Seite einbindet, zeigt Shawn Burke mit seinem Toolkit Extender for creating WPF/E components.

Immer einen Besuch Wert ist auch die Seite von ScottGuthrie, der eine kurze Einführung in WPF/E geschrieben hat.

Sehr lesenswert ist auch der Blog von John Rayner. Hier geht es unter anderem um:
Zum Schluß noch zwei nützliche MSDN-Quellen:

Mittwoch, Dezember 06, 2006

WPF/E ist der Wahnsinn!

Nach vielen Ankündigungen ist WPF/E jetzt endlich als CTP verfügbar.
Eine kurze Einführung in WPF/E finden Sie hier.

Das ebefalls erhältliche Sample Pack enthält ein paar echt beeindruckende Beispiele! Mein persönlicher Favorit ist das "Seite umblättern"-Sample:



Aber auch der eingebaute Video Player ist ein echtes Hightlight:



Darüber hinaus haben einige Leute bereits richtig Gas gegeben:
  • Wie einfach man mit WPF/E Videos in seine Blogeinträge einbindet, verrät Chandu Thota hier.
  • Wie man einen eigenen Video Player fürs Web erstellt und diesen mit WPF-Mitteln verschönert, zeigt The ADO Guy hier.
  • Was man sonst noch so mit WPF/E anstellen kann zeigt Peter Blois mit seinem Vector Art Viewer Sample.
  • Das WPF/E nicht nur ein Konkurrent von Flash ist, sondern auch wunderbar mit diesem interagieren kann, zeigt TheWPFBlog hier und hier.

Es schein so als würde da richtig was in Bewegung kommen...