#region Properties[Category("File URL")][Browsable(true)][Description("Set path to source file.")][Editor(typeof(System.Web.UI.Design.UrlEditor), typeof(System.Drawing.Design.UITypeEditor))]public string FilePath{ get { return mFilePath; }
set
{
if (value == string.Empty)
mFilePath = string.Empty;
}
else
int tilde = -1;
tilde = value.IndexOf('~');
if (tilde != -1)
mFilePath = value.Substring((tilde + 2)).Trim();
mFilePath = value;
} // end FilePath property
[Category("Media Player")]
[Browsable(true)]
[Description("Show or hide the tracker.")]
public bool ShowTracker
get
return mShowTracker;
mShowTracker = value;
[Description("Show or hide the position controls.")]
public bool ShowPositionControls
return mShowPositionControls;
mShowPositionControls = value;
[Description("Show or hide the controls.")]
public bool ShowControls
return mShowControls;
mShowControls = value;
[Description("Show or hide the status bar.")]
public bool ShowStatusBar
return mShowStatusBar;
mShowStatusBar = value;
#endregion
The last region of code contained in the custom control is that used to actually render the control:#region "Rendering"protected override void RenderContents(HtmlTextWriter writer){ try { StringBuilder sb = new StringBuilder(); sb.Append("<object classid=clsid:22D6F312-B0F6-11D0-94AB- 0080C74C7E95 "); sb.Append("codebase=http://activex.microsoft.com/activex/ controls/mplayer/en/nsmp2inf.cab#Version= 5,1,52,701 Width = " + Width.Value.ToString() + " Height = " + Height.Value.ToString() + "type=application/x-oleobject align=absmiddle"); sb.Append("standby='Loading Microsoft+reg; Windows+reg; Media Player components...' id=mp1 /> "); sb.Append("<param name=FileName value=" + FilePath.ToString() + "> "); sb.Append("<param name=ShowStatusBar value=" + ShowStatusBar.ToString() + "> "); sb.Append("<param name=ShowPositionControls value=" + ShowPositionControls.ToString() + "> "); sb.Append("<param name=ShowTracker value=" + ShowTracker.ToString() + "> "); sb.Append("<param name=ShowControls value=" + ShowControls.ToString() + "> "); sb.Append("<embed src=" + FilePath.ToString() + " "); sb.Append("pluginspage=http://www.microsoft.com/ Windows/MediaPlayer type=application/x-mplayer2 "); sb.Append("Width = " + Width.Value.ToString() + " "); sb.Append("Height = " + Height.Value.ToString()); sb.Append(" /></embed></object>"); writer.RenderBeginTag(HtmlTextWriterTag.Div); writer.Write(sb.ToString()); writer.RenderEndTag(); }
catch
// with no properties set, this will render "Display PDF
// Control" in a
// a box on the page
writer.RenderBeginTag(HtmlTextWriterTag.Div);
writer.Write("Display WVC Control");
writer.RenderEndTag();
} // end try-catch
} // end RenderContents#endregion