Tips & Tricks for Flexible Application

In my previous post, I introduced my FlexibleApplication template. In this posts, I offer a couple tips & tricks. Determing the App Model at Compile Time or Runtime Depending on your application, you may want to do different things in the standalone and XBAP version. The Flexible Application template adds some goo (i.e. compilation constants & static helpers) to make doing this easier for you. Conditional compilation: #if XBAP //  XBAP specific code #else //  Standalone specific code #endif Runtime switching: if (MyApp.IsXBAP) { //  XBAP specific code } else { //  Standalone specific code } XAML switching: <Grid> <Grid.Resources> <BooleanToVisibilityConverter x:Key=”BoolToVis” /> </Grid.Resources> …

VS Template: Flexible Application

In WPF, we support two main app models: standalone and XBAP. Standalone apps are akin to traditional Windows apps. They run in their own window. They tend to be fully trusted (unrestricted access to the computer and its resources). And they are installed (either via an MSI, ClickOnce, or EXE distribution). XBAPs, on the other hand, are browser hosted applications. They’re cached (using ClickOnce) and sandboxed. Users navigate to them (promptlessly) in the browser like they do any other website. (XBAP whitepaper & sandbox whitepaper) What’s great then is, if you’ve written your app in a security & navigation friendly …

blog work blog

About 6 months ago, I took the plunge and started a personal blog. Recently, I thought it would be fun to post about what I do during the day (and sometimes night!): Windows Presentation Foundation (WPF). On WPF, I am the security and partial trust sandbox program manager. I am also heavily invested in XAML Browser Applications (XBAPs). On this blog, you’ll find a lot of postings on these areas, as well as general WPF & industry musings. The links: Work blog: (rss) Life blog: (rss) Everything blog: (rss)

Spanish Me

Last September, I wrote a whitepaper for work.  I *just* found out it was translated to Spanish.  For some reason, I thought that was super cool (and hence, transitively, i’m super cool). And no, I haven’t finished reading the spanish verison.  (Still about halfway through the introduction…)