Salve. Sto cercando di inserire oggetti video o audio in una pagina aspx in modo dinamico, quindi passando attraverso codice i diversi oggetti.
Utilizzo il tag di HTML <object> e tutto riuscirebbe bene se non fosse per il fatto che i media appaiono doppi, a prescindere dal browser usato e dal fatto se siano audio o video.
Ecco il mio codice.
Sulla pagina aspx.
codice:
...
<body>
<form id="form1" runat="server">
<div>
<asp:Panel ID="Panel1" runat="server" Height="20px" Width="555px"></asp:Panel>
<asp:Panel ID="Panel2" runat="server" Height="20px" Width="555px"></asp:Panel>
</div>
</form>
</body>
Nella relativa aspx.vb
codice:
Partial Class _Default
Inherits System.Web.UI.Page
Public Sub form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles form1.Load
Dim oClass As Object
oClass = New Class1
Dim intI As Integer
x.Array1(0) = Me.panel1
x.Array1(1) = Me.panel2
For intI = 0 To 1
If Class1.ChangeSong(intI) <> "" Then
x.Array1(intI).Controls.Add(New LiteralControl(CallByName(oClass, "ChangeSong", vbMethod, intI)))
End If
Next
End Sub
End Class
Infine nel modulo dove passo i media (per semplicità ne riporto solo due):
codice:
Public Class Class1
Shared Function ChangeSong(intI As Integer) As String
Select Case intI
Case 0
Return "<object type="" audio/mpeg"" data="" ../Private/Jennifer.mp3"" width="" 500"" height="" 100"">" &
"<param name = "" FileName"" value="" ../Private/Jennifer.mp3""/> " &
"<param name = "" autostart"" value="" 1"" /> " &
"<param name = "" autoplay"" value="" true"" /> " &
"<param name = "" controller"" value="" false"" /> " &
"</object>"
Case 1
Return "<object type="" audio/mpeg"" data="" ../Private/Johnny.mp3"" width="" 500"" height="" 100"">" &
'"<param name = "" FileName"" value="" ../Private/Johnny.mp3""/> " &
'"<param name = "" autostart"" value="" 0"" /> " &
'"<param name = "" autoplay"" value="" false"" /> " &
'"<param name = "" controller"" value="" True"" /> " &
'"</object>"
End Select
End Function
End Class
Il risultato - la musica si sente - è però quello in figura.