Shawn Burke's Blog

Pushing the new stuff

Toolkit Extender for creating WPF/E components

Toolkit Extender for creating WPF/E components

  • Comments 19

If you haven't already seen ScottGu's post on WPF/E, I'd recommend checking it out.  WPF/E is a new technology that opens up incredible new possibilities for improving the richness and interactivity of the web.  Scott links to a few demos, and the WPF/E install is quick simple, and even works on a Mac!

Adding a WPF/E component to your page is still a little bit of work though.  To make it easier, I've created a simple Toolkit extender that automates this code so you can just create the extender and go.  See the attached file below - there is a C# and a VB.Net version of the component (though if you're just using the extender, it doesn't matter).

To add WPF/E to your website:

    1. Create your XAML file (there is a simple XAML file in the sample attached, otherwise you can use the Expression Interactive Designer beta).  Add the file to your website.  Also add any other scriptiing you'd like for your WPF/E component.
    2. Build the attached solution and add the WPFEHost DLL to your website's bin directory (you'll also need to add AjaxControlToolkit.dll if you don't already have it).
    3. In your website, create a Panel where you want the WPF/E content to show.  
    4. Add the WPFEHost extender.  Note that if you're writing any script against your WPF/E control, the ID of the WPF/E control will be set to the ID of Extender, for example "wpfeControl" below.

<wpfe:WPFEHostExtender ID="wpfeControl" Runat="server" Height="350px" TargetControlID="Panel1" Width="350px" XamlPath="myWpfeControl.xaml" BackgroundColor="transparent"/>

That's it! 

 

Attachment: WPFEHostExtender.zip
Leave a Comment
  • Please add 2 and 1 and type the answer here:
  • Post
  • If you haven't already seen ScottGu's post on WPF/E , I'd recommend checking it out. WPF/E is a new technology

  • Kudos to the ASP.NET AJAX Toolkit team for creating a killer extender to simplify getting a "WPF/E" control

  • A few links I have collected for your WPF\E journey. John Rayner on WPF\E and IE security (this will

  • Nikhil Kothari has a sample that demonstrates Script# and “WPF/E” integration. Shawn Burke posted a Toolkit

  • Quick question: why does it have to be an extender and not a simple control?

  • No real reason - going the extender route was quicker since we have the templates, etc. for it.  It could just as easily be a control.

  • 新 PC への移行作業中でのんびりとは読めなかったのですが、ASP.NET と WPF/E は今後連携して利用していく事が可能になるようですね(統合して開発していく事が可能になるようです。) WPF/E

  • E&rsquo; di qualche giorno fa l&rsquo;annuncio dell&rsquo;uscita della CTP di Dicembre di WPF/E . E&rsquo;

  • Shawn, do you plan to update this for AJAX 1.0 RC ?

    Thanks

  • Hello Shawn

    Any plan for updating this(Toolkit Extender for creating WPF/E components) to ASP.Net AJAX 1.0 RC and WPF/E Dec06 CTP

  • Actual i was trying to compile WPFEHostExtender website and WPFEHost class library with ASP.Net AJAX RC1.

    Any way i could compile WPFEHost class library by (1) changing refercences to new AjaxControlToolkit.dll and (2) changing Microsoft.Web.Extensions to System.Web.Extensions and (3) Microsoft.Web.Extensions.Design to System.Web.Extensions.Design

    Also for WPFEHostExtender website i did above changes but yes i get following error:

    " Could not load type 'System.Web.Handlers.WebResourceCompressionModule' from assembly 'System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'."

  • Yes i could successfully compile and Run  WPFEHostExtender website using ASP.Net AJAX RC1 toolkit after removing lot many lines of code from web.config.

    Following contetnts in Web.config were sufficient to run the xaml clock :

    <?xml version="1.0"?>

    <configuration>

    <system.web>

    <compilation debug="true">

    <assemblies>

    <add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

    <add assembly="System.Web.Extensions.Design, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>

    <add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/></assemblies>

    </compilation>

    <httpHandlers>

    <add verb="GET" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler" validate="false"/>

    </httpHandlers>

    </system.web>

    </configuration>

  • While browsing today about the "WPF/E" i found a nice post that i thought to share with you, it's from...

  • First CTP of Windows Presentation Foundation Everywhere (WPF/E) was released last december, Joe Stegman

  • Earlier today I presented the DEV304: ASP.NET AJAX Control Toolkit Unleashed: Creating Rich Client-Side

Page 1 of 2 (19 items) 12