I have been working with WPF for something like 7 years, and I still go through times when I wonder if it is insane, or insanely beautiful. I usually conclude that it is a bit of both. Often it takes a lot of work and verbosity and debugging to hook something up in XAML and have clean separation when it could be done with a bit of C#, but doing things declaratively is a bit of a game. It can be fun to learn, but sometimes it just isn't worth it to achieve the separation between code and layout. It is an addictive game, though, that pulls you in deeper and deeper. At some point along the way it clicked, and I started breathing Styles, triggers, attached properties, DataTemplates, ControlTemplates, Bindings, RelativeSources, CollectionViewSources, StaticResources, DynamicResources, TemplateBindings, BooleanToVisibilityConverters, custom IValueConverters, DoubleAnimations, LinearGradientBrushes, Grid.ColumnDefitions, TransformGroups, AffectsRender, Storyboards, oh my! "I don't often" enjoy writing XML, but when I do, it's XAML. I never used Blend, doing most by hand in Visual Studio, with its Intellisense that reads your mind, letting you avoid writing the bulk of the actual XAML. (I'm stuck with VS 2012 when editing XAML, since for some reason 2013's XAML editor crashes on my stuff by running out of virtual memory and I'm not alone.) For newbies, I definitely recommend learning via the top MVVM frameworks and/or books, and keeping references like http://wpftutorial.net/[^] handy, as WPF has a uniquely obtuse learning curve. I like to learn things by getting my hands dirty and diving in, but for this, take the time to learn some of the theory from someone who knows how to present the concepts in an easy to manage order. Also when you delve into bindings and collections, check out Bea Stollnitz's blog[^]http://www.zagstudio.com/blog[^]. She is some kind of superhuman that invented and can explain the bindings. Also, browse WPF articles here on codeproject, so you can see all the cool things that can be done. When WPF is my favorite thing, CodeProject becomes my favorite site. (And if I get stuck, stackoverflow is my go to.) I also
JaredThirsk
Posts
-
WPF Rant -
MacBook Air is really usefulConsidering my MBA CPU often runs at 95+ degrees C, I was thinking the same thing.
-
Anyone getting tired of todays video games?The creator of Total Annihilation went on to make Supreme Commander and Supreme Commander: Forged Alliance, which I think are great successors, especially if you find good mods (I liked Uberhack for TA, and SupCom:FA needs fixes for AI I think.) (Though Supreme Commander 2 is the Star Trek V of the franchise -- I pretend it didn't happen.) Here's a gameplay video: http://www.youtube.com/watch?v=uD5APeLebTE[^] My 2 favorite all time games: TA/SupCom (I consider them one franchise) and netrek. Like the OP I also lament the state of the game industry and a few weeks ago left my job to take a shot at making games full time! Hopefully I can inject enough of my ideas to make it creatively worthwhile and also make a living.
modified on Tuesday, October 19, 2010 12:21 PM
-
.NET 4 Rocks!