WPF Direct3D Interop

by Christoph Menge in Software

There are some very interesting posts I missed the last days. Since .NET 3.5 SP1 perfectly integrates WPF with DirectX, a number of cool effects can finally be applied:
http://www.codeproject.com/KB/WPF/WPFPixelShader.aspx
http://blogs.msdn.com/greg_schechter/archive/2008/05/12/introduction-to-writing-effects.aspx
http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx
Some of those effects were on Dax Pandhi’s wish list for WPF (http://blog.nukeation.com/post/My-wishlist-for-the-next-release-of-WPF.aspx) for quite some time.
More importantly, the integration of WPF and Direct3D might eliminate the [...]

Tags: , , ,

A MenuKiller Control – Draft

by Christoph Menge in Software

This is just a draft on my upcoming article. I have asked a number of WPF Gurus to help me out on this…
Introduction

In an effort to take user experience to the next level, designers have come up with ideas on how to solve old problems in a new way. In the last few months, the [...]

Tags: , , , ,

Protected: A MenuKiller Sample Application

by Christoph Menge in Software

There is no excerpt because this is a protected post.

Tags: , , ,

ICommand.CanExecute() and NullReferenceException

by Christoph Menge in .NET

Have you ever tried to call ICommand.CanExecute()? It actually works fine, but only if you are not as naive as I am… Simply calling it without the proper know-how might result in a NullReferenceException, so what you should read is how to implement ICommandSource. See
MSDN: How To: Implement ICommandSource
MSDN: Implement ICommandSource Sample.
Not a big thing, [...]

Tags: , , ,

On UIElement.Opacity and the Removal of Storyboards

by Christoph Menge in Software

Today, I encountered two WPF related problems:
1 – UIElement.Opacity and the way it is being ‘inherited’
Every UIElement has an Opacity property, which will we be used when rendering the control. When rendering an object, 0.0 means the object is fully transparent, thereby invisible to the user, while 1.0 means it is fully opaque. Since controls [...]

Tags: ,

Applying ItemContainerStyle Recursively

by Christoph Menge in Software

In the MenuKiller Control, I need to configure a TreeView to quite some extent: I want all nodes to have a certain custom ItemContainerStyle.
First naive approach: The TreeView will apply its ItemContainerStyle to all nodes. Wrong! The TreeViewItems themselves are ItemControls, therefore having their own ItemContainerStyle.
Second approach: Have the ItemContainerStyle refer to itself using [...]

Tags: , ,

The MenuKiller Control – Differentiated UX

by Christoph Menge in Software

A while ago, I readĀ a very interestingĀ blog post: Rethinking the Button by Dax Pandhi. It really fascianated me, so I started some research on the topic. Apparently, “Differentiated UX” is the new buzzword. As is always the case with buzzwords, different people understand it in different way, but I guess the common denominator is: We [...]

Tags: , , , ,

Custom DependencyProperties and “Auto”

by Christoph Menge in Software

While implementing a little custom control (a radial panel, actually – stay tuned what it’s good for…), I stumbled across a little problem when trying to add automatic behaviour.
Many built-in WPF Controls such as Canvas or Panel allow something like

Width="Auto"

Now, for my control I need something that accepts

AngleSpacing="Auto"
AngleSpacing="<double>"

Of course, accomplishing that is very simple, but [...]

Tags: , , ,

Tao Framework now DPI Aware!

by Christoph Menge in .NET, Software

Huge thanks to Ilmar Kruis for implementing GetDeviceCaps() in the Tao framework! With some small modifications I suggested, one can now easily develop DPI-aware OpenGL applications using C# or .NET in general! Thanks Ilmar!
I will update my article on the CodeProject about OpenGL windows in Vista soon!
See http://www.taoframework.com/
Get the latest version via SVN: https://taoframework.svn.sourceforge.net/svnroot/taoframework
[...]

Tags: , , ,

Creating OpenGL Windows in WPF

by Christoph Menge in Software

Hello, World!
Ok, my first blog entry! I also posted my first article at The CodeProject today:
Creating OpenGL Windows in WPF
Have fun!

Tags: , ,