<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://beta.blogs.microsoft.co.il/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Janiv Ratson&amp;#39;s Blog : WPF, DEV, Crossbow</title><link>http://beta.blogs.microsoft.co.il/blogs/janiv/archive/tags/WPF/DEV/Crossbow/default.aspx</link><description>Tags: WPF, DEV, Crossbow</description><dc:language>en</dc:language><generator>CommunityServer 2007.1 (Build: 20917.1142)</generator><item><title>Embedding and Communicating with the Macromedia Flash Player in WPF</title><link>http://beta.blogs.microsoft.co.il/blogs/janiv/archive/2009/09/20/embedding-and-communicating-with-the-macromedia-flash-player-in-wpf.aspx</link><pubDate>Sun, 20 Sep 2009 19:48:00 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:409694</guid><dc:creator>Janiv Ratson</dc:creator><slash:comments>5</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://beta.blogs.microsoft.co.il/blogs/janiv/rsscomments.aspx?PostID=409694</wfw:commentRss><comments>http://beta.blogs.microsoft.co.il/blogs/janiv/archive/2009/09/20/embedding-and-communicating-with-the-macromedia-flash-player-in-wpf.aspx#comments</comments><description>&lt;blockquote&gt;&amp;nbsp;&lt;/blockquote&gt;
&lt;div style="PADDING-BOTTOM:0px;MARGIN:0px;PADDING-LEFT:0px;PADDING-RIGHT:0px;DISPLAY:inline;FLOAT:none;PADDING-TOP:0px;" id="scid:F60BB8FA-6F02-4999-8F5E-9DD4E92C4DA7:e4491857-5d97-4808-a761-2ea2dbe1c02f" class="wlWriterEditableSmartContent"&gt;
&lt;div&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/janiv/MyBlogUserControls_13A8E0A6.zip" target="_blank"&gt;Download Source Code and Binaries (MyBlogUserControls.zip)&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Embedding the &lt;a href="http://get.adobe.com/flashplayer/" target="_blank"&gt;Macromedia Flash Player&lt;/a&gt; ActiveX control is a relatively simple way to do the following:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Add functionality, graphics, or animation to your WPF application. &lt;/li&gt;
&lt;li&gt;Extend the capabilities of your stand-alone Macromedia Flash application (such as adding file I/O capabilities to Macromedia Flash). &lt;/li&gt;
&lt;li&gt;Use existing flash resources in your WPF application (i.e. Use Banners in your WPF application) &lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Before you decide to embed the Macromedia Flash Player ActiveX control within your WPF application, however, there are a number of things that you should consider:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Macromedia does not officially support embedding the Macromedia Flash Player ActiveX control within a Windows application. This means that future versions of the player may not work with your application. &lt;/li&gt;
&lt;li&gt;It requires users to install the Macromedia Flash Player ActiveX control on their computers. This can be done by installing the player within Microsoft Internet Explorer. Although it is technically possible to distribute the player, that is restricted by the player&amp;#39;s end-user license agreement. If you need to distribute the Macromedia Flash Player ActiveX control, &lt;a href="http://www.adobe.com/support/shockwave/info/licensing/" target="_blank"&gt;contact Macromedia for permission&lt;/a&gt;. &lt;/li&gt;
&lt;li&gt;Because it uses ActiveX technology, it works only on Windows OS. &lt;/li&gt;
&lt;li&gt;Versions of the Macromedia Flash Player prior to version 6 did not support embedding within Windows applications. Users need version 6.0r79 or higher. &lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;The easiest way to use the Macromedia Flash Player ActiveX control within your WPF applications is to create a WPF user control that will wrap the Flash Player. &lt;br /&gt;As WPF currently does not support such a wrapper, we will use another wrapper of type WindowsFormsHost. &lt;br /&gt;We’ll learn how to display Flash Player media within WPF application by following 4 major steps.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font size="3"&gt;Step 1. Creating a WPF User Control Library&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Our final goal would be having a WPF user control that would play Flash media files (swf/flv). Therefore, our first step is to create the WPF User Control Library that would wrap it all, and will be used by any WPF window or page.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1.&lt;/strong&gt; Create a new WPF User Control Library project (mine was named &lt;em&gt;MyBlogUserControls&lt;/em&gt;) &lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/janiv/CreateTheWPFProject_3312C37F.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH:0px;DISPLAY:inline;BORDER-TOP-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-LEFT-WIDTH:0px;" title="CreateTheWPFProject" border="0" alt="CreateTheWPFProject" src="http://blogs.microsoft.co.il/blogs/janiv/CreateTheWPFProject_thumb_1795738F.png" width="687" height="442" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2.&lt;/strong&gt; Add a new WPF User Control&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/janiv/AddWPFUserControl_15168495.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH:0px;DISPLAY:inline;BORDER-TOP-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-LEFT-WIDTH:0px;" title="AddWPFUserControl" border="0" alt="AddWPFUserControl" src="http://blogs.microsoft.co.il/blogs/janiv/AddWPFUserControl_thumb_44F8D869.png" width="698" height="426" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3.&lt;/strong&gt; Add a Uri property and a Loaded event to your new WPF User Control&lt;/p&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&lt;font color="#000000"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; Uri Source { get; set; }     

&lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; FlashPlayer_Loaded(&lt;span class="kwrd"&gt;object&lt;/span&gt; sender, RoutedEventArgs e)
{&lt;/font&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&lt;font color="#000000"&gt;
}&lt;/font&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&lt;/span&gt;&lt;strong&gt;&lt;font size="3"&gt;Step 2. Creating a Windows Forms User Control&lt;/font&gt;&lt;/strong&gt;&lt;/pre&gt;
&lt;p&gt;As WPF does not support hosting an ActiveX control directly but Windows Forms does, we will use the &lt;a href="http://msdn.microsoft.com/en-us/cc527394.aspx" target="_blank"&gt;Crossbow technology&lt;/a&gt; to host the Flash Player within our WPF application. We will add the Macromedia Flash Player ActiveX Control to our toolbox, and will wrap it within a Windows Forms User Control.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1.&lt;/strong&gt; In your new project, add a reference to the &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.forms.integration.aspx" target="_blank"&gt;WindowsFormsIntegration namespace&lt;/a&gt; (from the .NET tab)&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/janiv/AddWindowsFormsIntegrationRef_303122AD.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH:0px;DISPLAY:inline;BORDER-TOP-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-LEFT-WIDTH:0px;" title="AddWindowsFormsIntegrationRef" border="0" alt="AddWindowsFormsIntegrationRef" src="http://blogs.microsoft.co.il/blogs/janiv/AddWindowsFormsIntegrationRef_thumb_2B097802.png" width="709" height="368" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2.&lt;/strong&gt; Add a new Windows Forms User Control to your project&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/janiv/AddWinFormsUserControl_795B2E21.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH:0px;DISPLAY:inline;BORDER-TOP-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-LEFT-WIDTH:0px;" title="AddWinFormsUserControl" border="0" alt="AddWinFormsUserControl" src="http://blogs.microsoft.co.il/blogs/janiv/AddWinFormsUserControl_thumb_2BE63DA7.png" width="714" height="433" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3.&lt;/strong&gt; Open the new Windows Form User Control in design mode, and make sure the Toolbox toolbar is visible.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4.&lt;/strong&gt; Right Click the toolbar within the All Windows Forms tab of the Toolbox toolbar and select the “Choose Items…” menu option. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/janiv/ToolboxContextMenu_68C5023D.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH:0px;DISPLAY:inline;BORDER-TOP-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-LEFT-WIDTH:0px;" title="ToolboxContextMenu" border="0" alt="ToolboxContextMenu" src="http://blogs.microsoft.co.il/blogs/janiv/ToolboxContextMenu_thumb_7DDB3005.png" width="407" height="621" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;5.&lt;/strong&gt; The Choose Toolbox Items dialog is opened. Go to COM Components tab, scroll down to the Shockwave Flash Object item and check it. Press OK. &lt;br /&gt;If this item is not listed, make sure that the Macromedia Flash Player ActiveX control is installed on your system.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/janiv/ChooseToolboxItems_28712DDA.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH:0px;DISPLAY:inline;BORDER-TOP-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-LEFT-WIDTH:0px;" title="ChooseToolboxItems" border="0" alt="ChooseToolboxItems" src="http://blogs.microsoft.co.il/blogs/janiv/ChooseToolboxItems_thumb_17B656A1.png" width="653" height="453" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;6.&lt;/strong&gt; Now you should have a Shockwave Flash Object within the All Windows Forms tab of the Toolbox toolbar&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/janiv/ShowaveInToolbox_4CA00986.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH:0px;DISPLAY:inline;BORDER-TOP-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-LEFT-WIDTH:0px;" title="ShowaveInToolbox" border="0" alt="ShowaveInToolbox" src="http://blogs.microsoft.co.il/blogs/janiv/ShowaveInToolbox_thumb_6698EB0A.png" width="376" height="576" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;7.&lt;/strong&gt; Add the flash object to your Windows Forms User Control by dragging it, set its size according to your needs (if size is static), and name it (i.e. axShockwaveFlash).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;8.&lt;/strong&gt; Go to the Windows Form User Control source code and add Flash Player methods&lt;/p&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;partial&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; WFFlashPlayer : UserControl
{
        &lt;span class="kwrd"&gt;public&lt;/span&gt; WFFlashPlayer()
        {
            InitializeComponent();
        }

        &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;new&lt;/span&gt; &lt;span class="kwrd"&gt;int&lt;/span&gt; Width 
        {
            get{ &lt;span class="kwrd"&gt;return&lt;/span&gt; axShockwaveFlash.Width; }
            set{ axShockwaveFlash.Width = &lt;span class="kwrd"&gt;value&lt;/span&gt;; }
        }

        &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;new&lt;/span&gt; &lt;span class="kwrd"&gt;int&lt;/span&gt; Height 
        {
            get{ &lt;span class="kwrd"&gt;return&lt;/span&gt; axShockwaveFlash.Height; }
            set{ axShockwaveFlash.Height = &lt;span class="kwrd"&gt;value&lt;/span&gt;; }
        }

        &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; LoadMovie(&lt;span class="kwrd"&gt;string&lt;/span&gt; strPath)
        {
            axShockwaveFlash.LoadMovie(0, strPath);            
        }
       
        &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; Play()
        {            
            axShockwaveFlash.Play();
        }

        &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; Stop()
        {
            axShockwaveFlash.Stop();
        }        
}&lt;/pre&gt;









.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }










.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }

&lt;p&gt;Once we’ve completed this step, we have a Windows Forms User Control that wraps a Flash Player. Now we need to make it a WPF user control.&lt;/p&gt;
&lt;p&gt;&lt;font size="3"&gt;&lt;strong&gt;Step 3. Wrapping the Windows Forms User Control within our new WPF User Control using Crossbow&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1.&lt;/strong&gt; Open the WPF User Control XAML file.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2.&lt;/strong&gt; Name the main Grid (or any other WPF container you’d like)&lt;/p&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;UserControl&lt;/span&gt; &lt;span class="attr"&gt;x:Class&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;MyBlogUserControls.FlashPlayer&amp;quot;&lt;/span&gt;
    &lt;span class="attr"&gt;xmlns&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;http://schemas.microsoft.com/winfx/2006/xaml/presentation&amp;quot;&lt;/span&gt;
    &lt;span class="attr"&gt;xmlns:x&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;http://schemas.microsoft.com/winfx/2006/xaml&amp;quot;&lt;/span&gt;
    &lt;span class="attr"&gt;Height&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;300&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Width&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;300&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Loaded&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;FlashPlayer_Loaded&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Grid&lt;/span&gt; &lt;span class="attr"&gt;Name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;FlashPlayerGrid&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;            
    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Grid&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;UserControl&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;









.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }

&lt;p&gt;&lt;strong&gt;3.&lt;/strong&gt; Open the WPF User Control Source Code.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4.&lt;/strong&gt; Fill the Loaded event body with code to host the Windows Forms Flash Player, load the movie and play it&lt;/p&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;partial&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; FlashPlayer : UserControl
{
        &lt;span class="kwrd"&gt;public&lt;/span&gt; FlashPlayer()
        {
            InitializeComponent();
        }

        &lt;span class="kwrd"&gt;public&lt;/span&gt; Uri Source { get; set; }     

        &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; FlashPlayer_Loaded(&lt;span class="kwrd"&gt;object&lt;/span&gt; sender, RoutedEventArgs e)
        {
            WindowsFormsHost host = &lt;span class="kwrd"&gt;new&lt;/span&gt; WindowsFormsHost();
            WFFlashPlayer player = &lt;span class="kwrd"&gt;new&lt;/span&gt; WFFlashPlayer();
                        
            &lt;span class="rem"&gt;//the Windows Forms Host hosts the Flash Player&lt;/span&gt;
            host.Child = player;

            &lt;span class="rem"&gt;//the WPF Grid hosts the Windows Forms Host&lt;/span&gt;
            FlashPlayerGrid.Children.Add(host);

            &lt;span class="rem"&gt;//set size&lt;/span&gt;
            player.Width = (&lt;span class="kwrd"&gt;int&lt;/span&gt;)Width;
            player.Height = (&lt;span class="kwrd"&gt;int&lt;/span&gt;)Height;

            &lt;span class="rem"&gt;//load &amp;amp; play the movie&lt;/span&gt;
            player.LoadMovie(Source.AbsoluteUri);
            player.Play();
        }
}&lt;/pre&gt;
&lt;p&gt;&lt;font size="3"&gt;&lt;strong&gt;Step 4. Using the new WPF Flash Player Control&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;Let’s use our new Flash Player within a WPF application.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;1.&lt;/strong&gt; Create a new WPF Application.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2.&lt;/strong&gt; Add a reference to your User Controls Library (mine was MyBlogUserControls)&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3.&lt;/strong&gt; Open your Window’s XAML file.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;4.&lt;/strong&gt; Add the WPF User Control Library namespace to the Window Object&lt;/p&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Window&lt;/span&gt; &lt;span class="attr"&gt;x:Class&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;WPFLibTester.FirstPage&amp;quot;&lt;/span&gt;
    &lt;span class="attr"&gt;xmlns&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;http://schemas.microsoft.com/winfx/2006/xaml/presentation&amp;quot;&lt;/span&gt;
    &lt;span class="attr"&gt;xmlns:x&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;http://schemas.microsoft.com/winfx/2006/xaml&amp;quot;&lt;/span&gt;
    &lt;span class="attr"&gt;xmlns:controls&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;clr-namespace:MyBlogUserControls;assembly=MyBlogUserControls&amp;quot;&lt;/span&gt;
    &lt;span class="attr"&gt;Title&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;FirstPage&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Height&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;800&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Width&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;800&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;









.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, &amp;quot;Courier New&amp;quot;, courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }

&lt;p&gt;&lt;strong&gt;5.&lt;/strong&gt; Add the WPF Flash Player to your window and set its source and size&lt;/p&gt;&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Window&lt;/span&gt; &lt;span class="attr"&gt;x:Class&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;WPFLibTester.FirstPage&amp;quot;&lt;/span&gt;
    &lt;span class="attr"&gt;xmlns&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;http://schemas.microsoft.com/winfx/2006/xaml/presentation&amp;quot;&lt;/span&gt;
    &lt;span class="attr"&gt;xmlns:x&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;http://schemas.microsoft.com/winfx/2006/xaml&amp;quot;&lt;/span&gt;
    &lt;span class="attr"&gt;xmlns:controls&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;clr-namespace:MyBlogUserControls;assembly=MyBlogUserControls&amp;quot;&lt;/span&gt;
    &lt;span class="attr"&gt;Title&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;FirstPage&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Height&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;800&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Width&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;800&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Grid&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;        
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;controls:FlashPlayer&lt;/span&gt; &lt;span class="attr"&gt;Source&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;http://www.sothink.com/product/swfquicker/samples/specialEffect/Art_studio.swf&amp;quot;&lt;/span&gt; 
                  &lt;span class="attr"&gt;Width&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;700&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Height&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;600&amp;quot;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;controls:FlashPlayer&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Grid&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Window&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre class="csharpcode"&gt;&amp;nbsp;&lt;/pre&gt;
&lt;p&gt;That’s it. I’ve covered here three methods from the Shockwave Flash Media Object. Of course you can communicate with any of the Flash Object API methods, by calling them from your Windows Forms User Control wrapper. &lt;/p&gt;
&lt;p&gt;If you have troubles setting your Adobe Flash Player, you may find help &lt;a href="http://blogs.microsoft.co.il/controlpanel/blogs/Troubleshoot%20Adobe%20Flash%20Player%20installation%20for%20Windows" target="_blank"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Enjoy.&lt;/p&gt;&lt;img src="http://beta.blogs.microsoft.co.il/aggbug.aspx?PostID=409694" width="1" height="1"&gt;</description><category domain="http://beta.blogs.microsoft.co.il/blogs/janiv/archive/tags/WPF/default.aspx">WPF</category><category domain="http://beta.blogs.microsoft.co.il/blogs/janiv/archive/tags/DEV/default.aspx">DEV</category><category domain="http://beta.blogs.microsoft.co.il/blogs/janiv/archive/tags/.NET/default.aspx">.NET</category><category domain="http://beta.blogs.microsoft.co.il/blogs/janiv/archive/tags/Macromedia+Shockwave/default.aspx">Macromedia Shockwave</category><category domain="http://beta.blogs.microsoft.co.il/blogs/janiv/archive/tags/Banner/default.aspx">Banner</category><category domain="http://beta.blogs.microsoft.co.il/blogs/janiv/archive/tags/SWF/default.aspx">SWF</category><category domain="http://beta.blogs.microsoft.co.il/blogs/janiv/archive/tags/Windows+Forms/default.aspx">Windows Forms</category><category domain="http://beta.blogs.microsoft.co.il/blogs/janiv/archive/tags/Flash/default.aspx">Flash</category><category domain="http://beta.blogs.microsoft.co.il/blogs/janiv/archive/tags/FLV/default.aspx">FLV</category><category domain="http://beta.blogs.microsoft.co.il/blogs/janiv/archive/tags/Crossbow/default.aspx">Crossbow</category><category domain="http://beta.blogs.microsoft.co.il/blogs/janiv/archive/tags/Adobe+Flash+Player/default.aspx">Adobe Flash Player</category></item></channel></rss>