Home All Groups Group Topic Archive Search About
Author
4 Jun 2006 4:32 AM
Jeronimo Bertran
Hello,

I am creating a Web control then encapsulates a MediaPlayer.



    [ToolboxData("<{0}:MediaPlayer runat=server></{0}:MediaPlayer>")]
    public class MediaPlayer : WebControl
    {
        [Bindable(true)]
        [Category("Appearance")]
        [DefaultValue("")]
        public string Url
        {
            get
            {
                String s = (String)ViewState["Url"];
                return ((s == null) ? String.Empty : s);
            }

            set
            {
                ViewState["Url"] = value;
            }
        }

        protected override void RenderContents(HtmlTextWriter writer)
        {
            HtmlGenericControl player = new HtmlGenericControl
("object");
            player.ID = this.ClientID + "_player";
            player.Attributes["classid"] ="CLSID:6BF52A52-394A-11d3-
B153-00C04F79FAA6";

            player.InnerHtml = "<PARAM name=\"URL\" value=\"" + (String)
ViewState["Url"] + "\"> <PARAM name=\"autoStart\" value=\"false\">";
            player.RenderControl(writer);


            writer.Write(this.ClientID);
        }



The control produces the following HTML.


<span id="MediaPlayer1">
<object id="MediaPlayer1_player" classid="CLSID:6BF52A52-394A-11d3-B153-
00C04F79FAA6"><PARAM name="URL" value="Beep.wav"> <PARAM
name="autoStart" value="false"></object>MediaPlayer1</span>


I am trying to access the object from the page :

input id="Button1" type="button" value="button" onclick="MediaPlayer1
_palyer.controls.play()" />


But I get the following error:

Error:'MediaPlayer1_player' is undefined


How can I access the object from outside the span??

Thanks

Jeronimo Bertran

Author
5 Jun 2006 7:24 AM
Walter Wang [MSFT]
Hi Jeronimo,

Thank you for your post.

I was unable to repro the problem you described. The JavaScript
"MediaPlayer1_player.controls.play()" works ok in my test project.

Is the MediaPlayer rendered correctly in your browser?

Regards,
Walter Wang
Microsoft Online Community Support

==================================================
When responding to posts, please "Reply to Group" via your newsreader so
that others may learn and benefit from your issue.
==================================================

This posting is provided "AS IS" with no warranties, and confers no rights.
Author
9 Jun 2006 1:53 AM
Steve C. Orr [MVP, MCSD]
I also created a web control that encapsulates the media player.
It is located here, along with sample code for calling methods client side
as you are trying to do.
It's all free:
http://SteveOrr.net/articles/StreamingMedia.aspx

--
I hope this helps,
Steve C. Orr, MCSD, MVP
http://SteveOrr.net


Show quoteHide quote
"Jeronimo Bertran" <jeronimo.bertran@newsgroup.nospam> wrote in message
news:Xns97D7DB15A6CEDpublicjbbertrancom@207.46.248.16...
>
> Hello,
>
> I am creating a Web control then encapsulates a MediaPlayer.
>
>
>
>    [ToolboxData("<{0}:MediaPlayer runat=server></{0}:MediaPlayer>")]
>    public class MediaPlayer : WebControl
>    {
>        [Bindable(true)]
>        [Category("Appearance")]
>        [DefaultValue("")]
>        public string Url
>        {
>            get
>            {
>                String s = (String)ViewState["Url"];
>                return ((s == null) ? String.Empty : s);
>            }
>
>            set
>            {
>                ViewState["Url"] = value;
>            }
>        }
>
>        protected override void RenderContents(HtmlTextWriter writer)
>        {
>            HtmlGenericControl player = new HtmlGenericControl
> ("object");
>            player.ID = this.ClientID + "_player";
>            player.Attributes["classid"] ="CLSID:6BF52A52-394A-11d3-
> B153-00C04F79FAA6";
>
>            player.InnerHtml = "<PARAM name=\"URL\" value=\"" + (String)
> ViewState["Url"] + "\"> <PARAM name=\"autoStart\" value=\"false\">";
>            player.RenderControl(writer);
>
>
>            writer.Write(this.ClientID);
>        }
>
>
>
> The control produces the following HTML.
>
>
> <span id="MediaPlayer1">
> <object id="MediaPlayer1_player" classid="CLSID:6BF52A52-394A-11d3-B153-
> 00C04F79FAA6"><PARAM name="URL" value="Beep.wav"> <PARAM
> name="autoStart" value="false"></object>MediaPlayer1</span>
>
>
> I am trying to access the object from the page :
>
> input id="Button1" type="button" value="button" onclick="MediaPlayer1
> _palyer.controls.play()" />
>
>
> But I get the following error:
>
> Error:'MediaPlayer1_player' is undefined
>
>
> How can I access the object from outside the span??
>
> Thanks
>
> Jeronimo Bertran