*Update: Custom WPF Controls in F# is now available on Codeplex at http://wpffsharp.codeplex.com. You can still download the source from my site here. (Works best withVSTS2010 Beta1)
Screen Shot
It is a translation of SAMS WPF Control Development Unleashed: Building Advanced User Interfaces written by Pavan Podila, and Kevin Hoffman to F#. I picked this book for translation as it covers many advanced topics that other books shy away from. I have been a reader of Pavan Podila’s blog Pixel in Gene for some time, and I have also been waiting for a book dedicated advanced UIs, so when I heard that he was coming out with such a book I knew it was going to be exactly what I needed.
WPF Control Development
The aim behind this project is to serve as an extensive collection non trivial examples of WPF/F# UI. As I introduce people to F#, one thing I am constantly asked is; can it do GUI. Now I can say yes, … well sort of. So far I have only translated 3,500 lines of F# code, and I am still not finished.
I’m doing this primarily as a learning experience and as a forcing function. I have already learned a lot about WPF and F#, and I plan on continuously improving the code as I learn more. Other contributions to the project would be very welcome, and if you spot mistakes or know of any better implementations please don’t hesitate to let me know.
I hope that you find this code to be useful to your WPF and F# projects , and happy coding.
This is essentially a 3D browser for Visual Studio Team Foundation Server Work Items. Each of the cubes represents a Work Item, and each of the lines represents a Work Item Link.
Ultimately what I intend on building is a fully fledged time tracking software powered by SQL Reporting. Unfortunately that will take quite a bit of time to build, and given that some the tools I want to use for it are not out yet, I decided to build it in stages. The first stage is a simple WPF application which stores the data in a file. I’m using this to start tracking my time now so that when I do build the proper version I will have some realistic data to feed it.
Procedural modeling is an incredible technique for generating highly detailed scenes, as can be seen in the YouTube video. The screen shots below are from my little F# procedural modeling engine.
A point rotated around to make a circle and then revolved to make a sphere