Random Gradient Wallpaper Generator

Oops, I did it again 🙂 Created a new CodePlex project, that is. Introducing http://wallpaper.codeplex.com – a simple tool to generate a nice random wallpaper and display it on your desktop with just one click: Randomize – assigns random colors to all four corners Set as Wallpaper – saves the picture to My Pictures\GradientWallpaper.bmp and…

10

Dump Environment Folder Paths

This is just a quick snippet to dump the value of Environment.GetFolderPath for all special folders on a machine (so I don’t have to write it again next time): public static string DumpEnvironmentPaths() { var paths = Enum.GetValues(typeof(Environment.SpecialFolder)) .Cast<Environment.SpecialFolder>() .Select(folder => folder + " = " + Environment.GetFolderPath(folder)) .Aggregate((line1, line2) => line1 + Environment.NewLine +…

7

Tip: Don’t enter your CodePlex credentials every time

I just ran across an awesome tip at Scott’s blog that is going to save me a whole lot of time: Save Your Codeplex Repository Credentials I was entering my username and password everytime I connected to a CodePlex TFS server. Now I don’t have to! P.S. To make this work on XP, go to…


ColorPicker Control for WPF/Silverlight

A while back I was looking around for a color picker control for Live Geometry. The ColorPicker from http://silverlightcontrib.codeplex.com was exactly what I was looking for: (live preview needs Silverlight 3.0) Using the control in your code I just took the source from CodePlex and embedded it in my project. You need 5 files: Alternatively,…

8

Reflection with dynamic

This past summer the Visual C# IDE team was fortunate enough to have Paul van Brenk intern with us. Paul is a great guy and an experienced .NET developer from Rotterdam, Netherlands, who is interested in Azure, cloud computing and many other things. He also happens to be one of the contributors for dasBlog, which…


First videos of the structured editor prototype

Disclaimer: the structured editor work described in my posts is unrelated to my work at Microsoft. Everything shown is my personal research done as part of my MSc thesis during 2004-2007. Also, it’s not ready for real use and does not cover all the features of even C# 1.0. It’s a concept prototype and work…

16

UI without code or XAML: PropertyGrid, DataForm, etc.

WPF has certainly advanced the state-of-the-art in programming the UI. I personally think that WPF and Silverlight remove all the limits that existed to UI development in the past. The only limit now is your imagination. XAML is there for declarative machine-friendly UI descriptions, data-binding is for easier logic of syncing the UI to the…

2

www.officelabs.com and Garage: How Microsoft Supports Grassroots Innovation

This post was originally aimed for Microsoft employees who also have a side project, or a hobby project. It turns out, we have a nice internal thing called “The Garage” that is aimed to specifically support and foster such “evenings- and weekends projects” by Microsoft employees. Garage: What they do I own a side project…


Calling new on an interface

Interesting thing: technically there is a way to call new on an interface to create an object. How? Using a feature in the C# compiler for COM-interop support: using System.Runtime.InteropServices; class Program { static void Main(string[] args) { IFoo foo = new IFoo(); } } class Foo : IFoo { } [ComImport] [Guid("DC1CB768-0BE5-4200-8D0A-C844BFBE3DE7")] [CoClass(typeof(Foo))] interface…

10

Visual Studio disappears when creating a Silverlight 3 Application

I have Visual Studio 2008 SP1 and Silverlight 3 tools on the laptop I’m writing this post on. Ten minutes ago I was trying to create a new Silverlight 3 application through the New Project Dialog and after creating the project Visual Studio just disappeared on me. Usually when VS disappears instantly without the Watson…

2