C# 在你的 winforms 中嵌入 youtube/videos

C# embed youtube/videos in your winforms

我有问题,我在 winform 中添加了 Shockwave 播放器。不过youtube好像不支持了。那么如何将 video/youtube 视频嵌入到我的 winform 应用程序中呢?

您可以使用 WebBrowser 控件来显示嵌入的 YouTube 视频。为此,将 WebBrowser 控件放在窗体上并将以下代码放在窗体中:

protected override void OnLoad(EventArgs e)
{
    base.OnLoad(e);
    var embed = "<html><head>"+
    "<meta http-equiv=\"X-UA-Compatible\" content=\"IE=Edge\"/>"+
    "</head><body>" +
    "<iframe width=\"300\" src=\"{0}\"" +
    "frameborder = \"0\" allow = \"autoplay; encrypted-media\" allowfullscreen></iframe>" +
    "</body></html>";
    var url = "https://www.youtube.com/embed/L6ZgzJKfERM";
    this.webBrowser1.DocumentText = string.Format(embed, url);
}

备注

  1. 您应该确保使用正确的 url。例如,对于您可以在此地址看到的视频:https://www.youtube.com/watch?v=L6ZgzJKfERM,嵌入 url 是 https://www.youtube.com/embed/L6ZgzJKfERM.

  2. 此外,您还应确保允许以嵌入式方式播放视频。有些视频只允许在 youtube 上播放,但在您点击播放按钮后,您会收到此错误消息:

    This video contains content from XXXXXX. It is restricted from playback on certain sites or applications.

[// MOST IMPORTANT NOTE :
        // c# you have button click you upload video and database
        // You show the video using  DataList Control inside you use Literal control
    // Literal control bind using SqlData Source below link use and bind DataList and Literal Control

访问https://youtu.be/hXseP_8ZP5I

 protected void Button1_Click(object sender, EventArgs e)   
       {                 
        SqlConnection cn = new SqlConnection();
        cn.ConnectionString = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\ASPNETDB.MDF;IntegratedSecurity=True;User Instance=True";
        cn.Open();
        Response.Write("check "+cn.State);                      
        String link = "<iframe width=\"300\" height = \"200\" src = \"https://www.youtube.com/embed/" + TextBox1.Text + "\" frameborder = \"0\" allow = \"autoplay; encrypted-media\" allowfullscreen></iframe>";
        SqlCommand cmd = new SqlCommand();
        cmd.CommandText = "INSERT INTO Video(VIDEO_DETAILS,PATH)VALUES('"+"YOUTUBE" +"','" + link +"')"; 
        cmd.Connection = cn;
        cmd.ExecuteNonQuery();
        TextBox1.Text = "";
        cn.Close();
      }
            

访问https://i.stack.imgur.com/ECgnj.png][1]