WinFX

out-WPFGrid PowerShell CmdLet

July 9th, 2007

I’ve created a PowerShell CmdLet to show pipeline data in a WPF based Grid. WPFGridSnapIn.zip
To install:
1. Unzip the archive
2. Open a VS 2005 or VS Orcas Beta 1 command line (to get the right installutil version)
3. CD to the “WPFGridCommand\WPFGridCommand\bin\Debug” directory under wherever you unziped to.
4. InstallUtil WPFCommandCommand.dll
5. Start powershell
6. add-pssnapin WpfOutSnapIn
7. ps | out-wpfgrid

Step 7 should show you a grid of processes if it all works.

Five Must-See MSDN On-Demand Webcasts

April 10th, 2007

Microsoft’s “On-Demand Webcasts” are a great resource. Microsoft archives their live webcasts and makes them available for free via MSDN. I encourage everyone to have a look around.

  1. Advanced .NET Programming for Grid Computing Dan Ciruli from DigiPede reviews grid computing, largely in the context of their product.
  2. Windows Presentation Foundation Properties, Events, and Commands – covers Dependency Properties, Events, Commands
  3. Amazing but True: Things You Never Dreamed You Could Do with Windows PowerShell – quite strange really, and the rendition of the Notre Dame fight song made me puke (Go Blue!) but if you sit through about 5 minutes of goofiness you learn some cool Powershell stuff.

3D interactive controls using WPF

December 16th, 2006

This video from Microsoft’s Channel 9 shows a very cool hack used to interact with 2D controls in 3D. This fills a major hole in V1 of WPF 3D support. Source code is provided.

Where is my Control.InvokeRequired?

October 21st, 2006

‘Control.InvokeRequired’ is one of the mostly used functions in developing muti-threaded GUIs in .NET Framework. While developing a sample application for Vista, I wanted to use the same functionality but new WPF controls living in System.Windows.Controls namespace don’t have ‘InvokeRequired’ (similarly don’t have Invoke and BeginInvoke methods as WPF Controls do not implement ISynchronizeInvoke interface)

NY Times using WPF

September 17th, 2006

Suprisingly, the New York Times has developed a rich client reader application using WPF and .NET 3.0. I learned about it here.

Seems a bit tough on their core Apple using constituency ;-)

What technology would you be interested in for a Wednesday night talk?

June 23rd, 2006

I want to put together a Wednesday night talk, but I’ve dabbled in so much technology recently that I’m having trouble deciding on a topic. Here are the topics I’m thinking about so please let me know which ones you prefer:

Windows Presentation Foundation Fundamentals – How to get started with WPF
Windows Communication Foundation – Why is it better/different than ASP.Net, WSE, Remoting, etc?
Linq and C# 3.0 – MS finally brings OO persistence support to the table
Databinding in Windows Presentation Foundation – How to get your data onto the screen in an easy way

Some thoughts on Windows Presentation Foundation

June 11th, 2006

WPF is Microsoft’s new API for graphics and user interface work. Its object-oriented all the way down, is architected to efficiently work across remote desktop, and is to a certain extent hardware accelerated.

To the developer, the API appears as a “scene graph” or strongly typed DOM tree called the “Visual Tree”, and changing what is displayed on screen is effected by making changes to the “Visual Tree”.

The Command Pattern In Windows Presentation Foundation

February 22nd, 2006

Jelle Druyts of Microsoft Belgium introduces the Command Pattern, as implemented in Windows Presentation Foundation:

Text Rendering in Avalon/WinFX

January 11th, 2006

Avalon/WinFX promises a new level of quality in text rendering, but what about performance?

This powerpoint document describes the text rendering architecture of avalon.

Until the advent of DirectX 10 hardware, we should’nt expect any performance increases over and above that found in GDI+, which achives approximately 100K glyphs per second using a CPU-intensive process. With DirectX 10 hardware (not currently available), this should improve by a factor of 10, making it comparable to the GDI text rendering with the kind of hardware acceleration found on a VGA card circa 1996.

Plus ca change, plus c’est la meme chose.

Traveling the Avalon road, first experiences with databinding…

December 23rd, 2005

For some unknown reason, Microsoft has to decided not to release a DataGrid like control with the WPF libraries. This is quite a barrier to getting up and running fast when building a data intensive business application. This was some correspondence that I received from MS on the issue in the microsoft.public.windows.developer.winfx.avalon newsgroup:

Separation of Concerns while programming WPF with XAML

December 2nd, 2005

By now we are all hearing rumblings around Windows Vista, WinFX, WPF (Avalon) and XAML. WinFX is the new approach to designing applications for Windows Vista (formerly codenamed Longhorn), but beta versions of the libraries are already available, consisting of the Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF) and Windows Workflow Foundation (WWF). One of the common threads around the architecture will be that substantial portions will be based on XAML, the Extensible Application Markup Language.

In Avalon, Everything is Different

September 13th, 2005

In the Avalon programming model, the framework does a lot of work to implicitly wire up things which would require explicit coding in other (i.e. WinForms) paradigms. Routed Events is a great example of this. It’s quite a paradigm shift but once you get your head around it you’ll see the point.

The key concept is that events (well, “Routed” events) are implicitly passed up / down through the containment hierarchy. The way this works is that first, an analagous “PreviewXXX” event is “Tunnelled” down from the top (root) of the hierarchy to the target object. Then, the “XXX” event is “Bubbled” up from the target object to the root.

.net2 and related bookmarks

August 19th, 2005

As promised I have assembled some bookmarks (posted on delicious for all to see); small list for now but will grow.

.net2
winfx
visual studio 2005