The initial release of the Skinner (you can read up the details here) put a lot of effort into securing your application from loading malicious code into your main domain in full trust. It required assemblies that contained skins (in the form of BAML or just references through <code>SkinDescription</code> attributes) and all assemblies that are referenced by them (through merge »
<span style="text-decoration: underline;">Note:</span> if you’re not interested in low level control on your DirectShow graph and don’t need to render DVD content, just stick to <code>MediaElement</code> or <code>VideoDrawing+MediaPlayer</code>. This post is about how to render video yourself in your own filter graph. »
Imagine you have created a custom template for your window and disabled standard chrome. If you want to maximize your window you can’t just set its WindowState to Maximized because it will move over the taskbar. Instead, you will have to position it so its top left corner is at 0,0 and its bottom right corner is at SystemParameters.WorkArea’s Height »
<strong>UPDATE: Version 1.1 has been released. Check out the details here.</strong> »
This is a follow-up post to the previous one about the Skinner library. In this post I want to focus on a few technical peculiarities of the library and explain why certain things were done the way they were done. »
<strong>NOTE: The information presented in this post is outdated. It does describes the problem the library tries to solve but the approach in which this is done has changed. For the current library description please visit WPF skin engine - revisited.</strong> »
When I blogged about a WCF solution some time ago I mentioned another option to implement this feature by using a fast Remoting channel. That sprang up in my mind again and I decided to give it a try. As a result I got a very neat and fast solution. Interested? Read on! »
WPF is a great presentation platform that requires far less journeys to Win API compared to Windows Forms. Still, there are cases when native calls will do the job better, cleaner and (perhaps) faster. From the top of my head, how would you explicitly place a window on the screen? Yes, there are <code>Top</code> and <code>Left</code> properties in the <code>Window</code> »
In my intoductory post I mentioned another way to implement a single instance WPF application by making use of <code>Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase</code> class. This scenario is also covered in the great book on WPF by Matthew MacDonald and I thought my story wouldn’t be complete without looking at this option. »
Last time I blogged about a way to implement a single instance feature using WM_COPYDATA Win32 mechanism. It involves a bit of PInvoke but still works perfectly well with WPF. This implementation dates back to .NET 1.1 and to be more precise – the old Win32 days as it was inspired by Joseph M. Newcomer's article. »