Entries:
Comments:
Posts:

Loading User Information from Channel 9

Something went wrong getting user information from Channel 9

Latest Achievement:

Loading User Information from MSDN

Something went wrong getting user information from MSDN

Visual Studio Achievements

Latest Achievement:

Loading Visual Studio Achievements

Something went wrong getting the Visual Studio Achievements

Using Virtual Earth in a WPF Application

Download

Right click “Save as…”

  • WMV (WMV Video)
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 http://blogs.msdn.com/devkeydet/archive/2008/06/24/wpf-and-virtual-earth-revisited.aspx

Follow the Discussion

  • 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!
  • 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.

  • 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.
  • 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?

Remove this comment

Remove this thread

close

Comments Closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums,
or Contact Us and let us know.