2009-09-19 90 views
0

我的应用程序中有一个WPF WebBrowser对象,我试图查看一个独立的YouTube视频。每当web浏览器导航到该YouTube视频的时候,我(用户)正在显示一个对话框,说明如下:
WPF WebBrowser问题

文件下载 - 安全警告
你想打开或保存 这个文件?

有什么办法可以避免这个对话框?我用于YouTube视频的地址格式如下(例如):
http://www.youtube.com/v/EVCkSMwaGGc&hl=en&fs=1&

回答

3

我认为这个问题与WPF或WebBrowser控件无关。如果您嗅探来自YouTube的流量,则会发现该内容类型是application/x-shockwave-flash。它看起来像IE浏览器使用保存文件对话框对此内容类型作出反应。

但是你可以做的是建立一个独立的HTML,它指的是你正在试图展示视频。事情是这样的:

<html> 
    <head> 
     <title>YouTube Video</title> 
    </head> 
    <body> 
     <object height="100%" width="100%"> 
      <param name="movie" value="http://www.youtube.com/v/8VQ4f22-SeE&hl=ru&fs=1&"> 
      </param><param name="allowFullScreen" value="true"> 
      </param><param name="allowscriptaccess" value="always"> 
      </param> 
      <embed src="http://www.youtube.com/v/8VQ4f22-SeE&hl=ru&fs=1&" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="100%" height="100%"> 
      </embed> 
     </object> 
    </body> 
</html> 

注意,从您的文章原始视频不能被包埋因为权限。

PS:要看到我使用FireFox + FireBug的实际流量。

+0

谢谢Anvaka。我试过了你的建议,而且效果很好。是的,我知道我的链接不能嵌入。我只是用它作为例子来显示链接格式。 – Chrisc 2009-09-21 22:17:39

0

好吧。 WPF浏览器只是一个围绕Internet Explorer的包装。如果您尝试导航到IE中的同一个网址,您会发现它的行为方式完全相同。

你可能需要做的是产生一个像下面这样的字符串: “” 并加载。

+0

哇stackoverflow搞砸了我的HTML字符串:)但另一个人已经发布了更好的格式化解决方案,所以! – 2009-09-20 18:05:09