namespace GeovinDu.PdfViewer
{[DefaultProperty("FilePath")][ToolboxData("<{0}:ShowPdf runat=server></{0}:ShowPdf>")] public class ShowPdf : WebControl{#region "Declarations" //Geovin Du 塗聚文 20131010private string mFilePath;#endregion#region "Properties" [Category("Source File")][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();}else{mFilePath = value;}}}} // end FilePath property#endregion#region "Rendering"/// <summary>/// Geovin Du 塗聚文 20131010/// </summary>/// <param name="writer"></param>protected override void RenderContents(HtmlTextWriter writer){try{StringBuilder sb = new StringBuilder();sb.Append("<iframe src=" + FilePath.ToString() + " ");sb.Append("width=" + Width.ToString() + " height=" + Height.ToString() + " ");sb.Append("<View PDF: <a href=" + FilePath.ToString() + "</a></p> ");sb.Append("</iframe>");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 pagewriter.RenderBeginTag(HtmlTextWriterTag.Div);writer.Write("Display PDF Control");writer.RenderEndTag();} // end try-catch} // end RenderContents#endregion} // end class
} // end namespace Geovin Du 塗聚文 20131010