I recently published an article on CodeProject that reviews a WPF graphing application. It turns out that my original circular dependency detection algorithm did not detect all circles in certain scenarios. I completely rewrote that algorithm, so that it now properly detects all circles in any object graph.
I also modified the way that the node connectors move, so that it feels more responsive and elastic. The app is much better now, and the article has been updated to reflect these changes (including a new source code download). If you want to check it out, here’s the link:
http://www.codeproject.com/KB/WPF/WpfGraphVisualization.aspx