Using Virtual Earth in a WPF Application

Download this episode


Marc Schweigert shows you how to use Virtual Earth in a WPF application by using a prototype WPF Virtual Earth control.  You'll also see a walkthrough of how the prototype control was built.  You can download the prototype and sample application at



Available formats for this video:

Actual format may change based on video formats available and browser capability.

    The Discussion

    • User profile image
      Great Screencast!

      I played around with Virtual Earth and WPF a while back but ran into Z-Order and DOM issues. Looks like the latest version of the WPF browser control and your "layered window trickery" solves most of the issues.

      However, I think the real power in doing something like this would be XAML pushpins with dynamic colors and numbers. I imagine just keeping the hidden top layer buttons visible and using a small transparent gif for the ve pushpin would do it. You'd lose the pushpin mouseover but I guess you could use the button mouseover event at that point. A custom dashboard would be needed to prevent the XAML buttons from covering it as well.  Any other thoughts? Thanks!
    • User profile image

      I actually had WPF pushpins originally, but chose not to go that route.  That's not to say you couldn't.  In fact, I actually use an invisible (Opacity=".01") WPF button over the pushpin rendered by the map.  That's how I chose to implement the ability to hover over the pushpin and get a WPF InfoBox (implemented as a UserControl).  If you really want to have WPF based pushpins, just comment out line 387 in VEMap and comment out line 401 which is the call telling VE to add the pushpin.

      I chose not to use WPF pushpins for two reasons.  First, it seemed like overkill to render such a small UI element as a vector graphic since pushpins are typically fixed width and height.  Second, due to the delay in event notification between JavaScript & managed code, the repositioning of the pushpins is a little “jerky.”  So I am a bigger fan of drawing your pushpins with a vector drawing tool, and then saving them as bitmaps.  You get the same visual experience with better overall perf.  Your mileage may vary.

    • User profile image
      Thanks for your insight. That takes me back to using Silverlight with the VE map inside the web browser control. Unfortunately you lose Drag-n-Drop between Silverlight and the WPF app; as well as some databinding and pure managed code events. Not to mention the XAML would need to reside in the VE map control project, not the WPF app.
    • User profile image
      i'm getting javascript errors when i click the "Birds-eye" view (line 41, char 13, "Input string was not the correct format"), so i just thought i'd bring up the question of debugging the script inside a WPF host app - can it be done?

    Comments closed

    Comments have been closed since this content was published more than 30 days ago, but if you'd like to send us feedback you can Contact Us.