首先,我在Visual Studio C#2013 Express上使用C#/ XAML。 我今天为wpf应用程序中的swf播放器写道。我读了很多关于这个子图的讨论,但没人能解决我的问题。我使用PageSwitcher,每个页面都继承自UserControl类,我为目录中的每个.swf文件创建一个按钮。这工作很好。当我点击其中一个时,我想打开一个新的页面,它是swf查看器。我可以打开一个新页面,但我的pdf查看器不起作用。我尝试了很多方法来解决我的问题,但没有任何效果。我有一个WinForm应用程序做我想要的,但我不能在我的WPF应用程序中添加它我尝试WindowsFormHost但我仍然有相同的错误:未找到类型或命名空间'AxShockwaveFlashObjects',而我添加了AxInterop.ShockwaveFlashObjects。 dll和/或Interop.ShockwaveFlashObjects.dll
这是我的代码: XAML
<UserControl x:Class="WPFPageSwitch.swf"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:wf="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"
mc:Ignorable="d">
<Grid x:Name="Container">
</Grid>
</UserControl>
C#
namespace WPFPageSwitch
{
public partial class swf : System.Windows.Controls.UserControl, ISwitchable
{
public swf(string swf)
{
InitializeComponent();
System.Windows.Forms.Integration.WindowsFormsHost swfPlayer = new System.Windows.Forms.Integration.WindowsFormsHost();
AxShockwaveFlashObjects.AxShockwaveFlash axShockwaveFlash = new AxShockwaveFlashObjects.AxShockwaveFlash();
swfPlayer.Child = axShockwaveFlash;
Container.Children.Add(swfPlayer);
}
}
}
有人可以帮助我吗? 错误在这里:AxShockwaveFlashObjects.AxShockwaveFlash axShockwaveFlash = new AxShockwaveFlashObjects.AxShockwaveFlash();