2008-08-04 75 views
30

C#中顯示Flash內容的最佳方法是什麼? WinForms應用程序?我想創建一個用戶控件(類似於當前的PictureBox),它將能夠顯示圖像和Flash內容。在C#WinForms應用程序中顯示Flash內容

很高興能夠從加載各種類型的Flash內容而不是磁盤上的文件。

+1

我upvoted斯文的答案,但只是有一點需要注意:使用WebBrowser組件是非常易於管理的,事實上,它正是用於這種用途(嵌入到應用程序UI中)。您可以將瀏覽器控件指向一個URL,當然,但您也可以精確地指定它包含的內容,對事件的響應等,甚至還有一個嵌入式資源協議/方案(res://),你可以用它來引用嵌入式資源,但顯然如果Flash組件本身是乾淨的,那麼這是更好的方式去:) – 2008-08-04 06:35:44

回答

29

雖然我自己並沒有在窗體表單應用程序中使用flash對象,但我確實知道這是可能的。 在工具箱上的Visual Studio中,選擇添加一個新組件。 然後在出現選擇「COM組件」選項卡以獲取列表,可以在其中找到「的Shockwave Flash對象」

一旦添加到工具箱中的新窗口,只需使用控制爲你將使用Visual Studio的任何其他「標準」控件。

三個簡單的命令可用於與控件交互:

  • AxShockwaveFlash1.Stop()
  • AxShockwaveFlash1.Movie = FILEPATH & 「\ FileName.swf」
  • AxShockwaveFlash1.Play()

哪一個,我認爲,都是不言自明的。

這將是偉大的,是能夠加載 從 各種流,而不是磁盤上的文件的Flash內容。

我剛纔看見你也在尋找一種手段,內容從流加載, 因爲我真的不知道這是可能的衝擊波Flash對象,我會給你另一種選擇(兩人竟)。

首先是一個我會建議你只在必要時使用,因爲它使用完全成熟的「WebBrowser組件」(也可作爲一個額外的工具箱項),這就好比試圖拍攝與飛一個火箭筒。 當然它會工作,因爲控件將作爲a real browser window(實際上是Internet Explorer瀏覽器),但它並不真正用於您需要的方式。

第二種選擇是使用我剛剛發現的內容,同時查找有關在Windows窗體中播放Flash內容的更多信息。 F-IN-BOX是一種商業解決方案,它還會播放來自給定網站URL的內容。 (所提供的鏈接將引導您到您必須使用的.NET代碼)。

+1

注意:在工具箱中右鍵單擊時,在VS 2013選項中稱爲「選擇項目...」。 – 2014-05-24 04:13:11

6

Sven,你的結論和我一樣:我發現了Shockwave Flash Object,它們都來自一個稍微不同的路徑,但卻難以從磁盤/ URL上的文件以外的地方加載文件。 F-IN-BOX雖然只是Shockwave Flash Object的包裝,但似乎提供了更多的功能,可能對我有幫助!

用火箭筒拍攝蒼蠅可能很有趣,但嵌入式網絡瀏覽器不是我尋找的路徑。 :)

有Adobe的網站,談到「嵌入,並與Macromedia Flash播放器在C#中的Windows應用程序通信」的鏈接,但他們似乎已經刪除它:(

相關問題