protected void btnExportPDF_Click(object sender, EventArgs e)

        {
            string filename = String.Format("Results_{0}_{1}.xls", DateTime.Today.Month.ToString(), DateTime.Today.Year.ToString());

            if (!string.IsNullOrEmpty(gridView1.Page.Title))
            {
                filename = gridView1.Page.Title + ".xls";
            }

            HttpContext.Current.Response.Clear();

            HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment;filename=" + filename);


            HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";
            HttpContext.Current.Response.Charset     = "";

            System.IO.StringWriter       stringWriter = new System.IO.StringWriter();
            System.Web.UI.HtmlTextWriter htmlWriter   = new HtmlTextWriter(stringWriter);



            System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm();
            gridView1.Parent.Controls.Add(form);
            form.Controls.Add(gridView1);
            form.RenderControl(htmlWriter);

            HttpContext.Current.Response.Write("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />");
            HttpContext.Current.Response.Write(stringWriter.ToString());
            HttpContext.Current.Response.End();
        }
Example #2
0
        protected void InicializaDefaultButton()
        {
            MasterPage myMasterPage = (MasterPage)Page.Master;

            System.Web.UI.HtmlControls.HtmlForm myForm = (System.Web.UI.HtmlControls.HtmlForm)myMasterPage.FindControl("form1");
            myForm.DefaultButton = btnPesquisar.UniqueID;
        }
Example #3
0
 protected void Page_Init(object sender, EventArgs e)
 {
     Controls.Add(new LiteralControl("<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org" +
                                     "/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\r\n<html xmlns=\"http://www.w3.org/1999/xh" +
                                     "tml\">"));
     Controls.Add(new System.Web.UI.HtmlControls.HtmlHead());
     Controls.Add(new LiteralControl("<body>"));
     form1 = new System.Web.UI.HtmlControls.HtmlForm();
     Controls.Add(form1);
     // script manager
     AjaxControlToolkit.ToolkitScriptManager sm = new AjaxControlToolkit.ToolkitScriptManager();
     sm.ID         = "sm";
     sm.ScriptMode = ScriptMode.Release;
     form1.Controls.Add(sm);
     // Div1
     Div1         = new System.Web.UI.HtmlControls.HtmlGenericControl("div");
     Div1.ID      = "Div1";
     Div1.Visible = false;
     form1.Controls.Add(Div1);
     // Extender1
     Extender1    = new XIOT.Web.DataViewExtender();
     Extender1.ID = "Extender1";
     Extender1.TargetControlID = "Div1";
     Extender1.FilterSource    = "ExtenderFilter";
     Extender1.View            = "editForm1";
     Extender1.ShowActionBar   = false;
     form1.Controls.Add(Extender1);
     // ExtenderFilter
     ExtenderFilter      = new System.Web.UI.HtmlControls.HtmlInputHidden();
     ExtenderFilter.Name = "ExtenderFilter";
     ExtenderFilter.ID   = "ExtenderFilter";
     form1.Controls.Add(ExtenderFilter);
     Controls.Add(new LiteralControl("</body></html>"));
 }
Example #4
0
        /// <summary>
        /// Exports the datagrid to an Excel file with the name of the datasheet provided by the passed in parameter
        /// </summary>
        public virtual void Export(string reportName, Page currentPage, Control gridView)
        {
            System.Web.UI.HtmlControls.HtmlForm htmlForm = new System.Web.UI.HtmlControls.HtmlForm();
            currentPage.Controls.Add(htmlForm);
            htmlForm.Controls.Add(gridView);

            ClearChildControls((GridView)gridView);

            currentPage.Response.Clear();
            currentPage.Response.Buffer = true;

            currentPage.Response.AddHeader("Content-Disposition", "attachment; filename=" + reportName);
            currentPage.Response.ContentType     = "application/vnd.ms-excel";
            currentPage.Response.ContentEncoding = System.Text.Encoding.UTF8;
            currentPage.Response.Charset         = "";
            currentPage.EnableViewState          = false;

            using (StringWriter stringWriter = new StringWriter())
            {
                HtmlTextWriter htmlWriter = new HtmlTextWriter(stringWriter);
                htmlForm.RenderControl(htmlWriter);
                htmlWriter.Flush();

                currentPage.Response.Write(stringWriter.ToString());
                currentPage.Response.End();
            }
        }
        protected void InicializaDefaultButton()
        {
            MasterPage myMasterPage = (MasterPage)Page.Master;

            System.Web.UI.HtmlControls.HtmlForm myForm = (System.Web.UI.HtmlControls.HtmlForm)myMasterPage.FindControl("form1");
            myForm.DefaultButton = "ctl00$MainContent$menuAcoes$btnGravar";
        }
Example #6
0
        public void OnPagePreInitCallback(System.Web.UI.Page page, System.Web.UI.HtmlControls.HtmlForm container)
        {
            System.Diagnostics.Trace.TraceInformation("AspNetWrapperBase.OnPagePreInitCallback");

            Debug.Assert(page != null);

            this.IsAsync    = page.IsAsync;
            this.IsPostBack = page.IsPostBack;
            this.IsCallback = page.IsCallback;

            page.PreInit           += Page_PreInit;
            page.Init              += Page_Init;
            page.InitComplete      += Page_InitComplete;
            page.PreLoad           += Page_PreLoad;
            page.Load              += Page_Load;
            page.LoadComplete      += Page_LoadComplete;
            page.PreRender         += Page_PreRender;
            page.PreRenderComplete += Page_PreRenderComplete;
            page.SaveStateComplete += Page_SaveStateComplete;
            page.AbortTransaction  += Page_AbortTransaction;
            page.CommitTransaction += Page_CommitTransaction;
            page.DataBinding       += Page_DataBinding;
            page.Error             += Page_Error;
            page.Unload            += Page_Unload;

            this._page          = page;
            this._hostedControl = CreateHostedControl();
            container.Controls.Add(this._hostedControl);
        }
Example #7
0
        protected void btnDescargar_Click(object sender, EventArgs e)
        {
            string   Hora = DateTime.Now.ToString("dd_MM_yyy_HH_mm");
            GridView grid = new GridView();

            Mgr_Trabajador.Grid_DescripcionSociodemografica(grid, string.Empty + ViewState["sWhere"]);

            System.Text.StringBuilder sb  = new System.Text.StringBuilder();
            System.IO.StringWriter    sw  = new System.IO.StringWriter(sb);
            HtmlTextWriter            htw = new HtmlTextWriter(sw);
            Page page = new Page();

            System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm();
            GridView Grid = new GridView();

            grid.AllowPaging = false;
            grid.DataBind();
            grid.EnableViewState       = false;
            page.EnableEventValidation = false;
            page.DesignerInitialize();
            page.Controls.Add(form);
            form.Controls.Add(grid);
            page.RenderControl(htw);
            Response.Clear();
            Response.Buffer      = true;
            Response.ContentType = "application/vnd.ms-excel";
            Response.AddHeader("Content-Disposition", "attachment;filename=perfil_socio_lista_" + Hora + ".xls");
            Response.Charset         = "UTF-8";
            Response.ContentEncoding = System.Text.Encoding.Default;
            Response.Write(sb.ToString());
            Response.End();
        }
Example #8
0
 private void ExportDataSetToExcel(DataSet ds)
 {
     if (ds.Tables[0].Rows.Count > 0)
     {
         System.Text.StringBuilder sb  = new System.Text.StringBuilder();
         System.IO.StringWriter    sw  = new System.IO.StringWriter(sb);
         HtmlTextWriter            htw = new HtmlTextWriter(sw);
         Page pagina = new Page();
         System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm();
         GridView dg = new GridView();
         dg.EnableViewState = false;
         dg.DataSource      = ds.Tables[0];
         dg.DataBind();
         pagina.EnableEventValidation = false;
         pagina.DesignerInitialize();
         pagina.Controls.Add(form);
         form.Controls.Add(dg);
         pagina.RenderControl(htw);
         Response.Clear();
         Response.Buffer      = true;
         Response.ContentType = "application/vnd.ms-excel";
         Response.AddHeader("Content-Disposition", "attachment;filename=DescargaPagos.xls");
         Response.Charset         = "UTF-8";
         Response.ContentEncoding = System.Text.Encoding.Default;
         Response.Write(sb.ToString());
         //Response.End(); se comentaria porque genera excepcion al terminar la peticion
         //Se agregan las linea de abajo.
         Response.Flush();
         Response.SuppressContent = true;
         HttpContext.Current.ApplicationInstance.CompleteRequest();
     }
 }
Example #9
0
        private void OutFile()
        {
            //定义输出流
            System.IO.StringWriter              oStringWriter   = new System.IO.StringWriter();
            System.Web.UI.HtmlTextWriter        oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter);
            System.Web.UI.Page                  oPage           = new System.Web.UI.Page();
            System.Web.UI.HtmlControls.HtmlForm oHtmlForm       = new System.Web.UI.HtmlControls.HtmlForm();
            oPage.EnableEventValidation = false;
            oPage.DesignerInitialize();
            oPage.Controls.Add(oHtmlForm);
            oPage.EnableViewState = false;

            oHtmlForm.Controls.Add(_controlOut);
            oPage.RenderControl(oHtmlTextWriter);

            //定义文档类型 字符编码
            Response.Clear();
            Response.Buffer  = true;
            Response.Charset = "gb2312";
            string oDisposition = string.Format("attachment;filename=WSS_{0}.{1}", _fileName, _fileSuffix);

            Response.AppendHeader("Content-disposition", oDisposition);
            Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");
            Response.ContentType     = string.Format("application/{0}", _fileType);
            this.EnableViewState     = false;

            string oResponseStr = oStringWriter.ToString().Replace("\r\n", "").Replace("bold;'></th>", "bold;'>");

            oResponseStr = System.Text.RegularExpressions.Regex.Replace(oResponseStr, @"<input.*?/>", "");
            Response.Write(oResponseStr);
            Response.End();
        }
Example #10
0
        //private void CreateSubmitButton() //This could take string parameters, but I don't need that right now
        //{
        //    Button submit = new Button();
        //    submit.Text = "Submit Evaluation";
        //    submit.CssClass = "btn btn-warning";
        //    submit.ID = "submitBtn";
        //    submit.Click += new EventHandler(submitBtn_Click); //Could not get this event handler to fire
        //    testForm.Controls.AddAt(testForm.Controls.Count, submit); //Sets it at the bottom of the form
        //    Session["submit"] = submit;
        //}
        protected void submitBtn_Click(object sender, EventArgs e)
        {
            if (Session["evaluation"] != null)
            {
                StudentEvaluation studentEvaluation         = new StudentEvaluation(user, (Evaluation)Session["evaluation"]);
                System.Web.UI.HtmlControls.HtmlForm newForm = (System.Web.UI.HtmlControls.HtmlForm)Session["form"];

                foreach (qType1 qt1 in newForm.Controls.OfType <qType1>())
                {
                    studentEvaluation.AddAnswer(qt1.QuestionID, qt1.Answer);
                }
                foreach (qType2 qt2 in newForm.Controls.OfType <qType2>())
                {
                    studentEvaluation.AddAnswer(qt2.QuestionID, qt2.Answer);
                }
                studentEvaluation.Submit();
                if (studentEvaluation.IsComplete)
                {
                    Label successLabel = new Label();
                    successLabel.Text     = "Form was submitted successfully!";
                    successLabel.CssClass = "bright-green col-xs-12 center";
                    testForm.Controls.Add(successLabel);
                    questionSelect.Items.RemoveAt(questionSelect.SelectedIndex);
                    if (questionSelect.Items.Count == 0) //Had an epiphany to nest it here
                    {
                        Session["evaluation"] = null;
                        Session["finished"]   = true;
                        Response.Redirect("~/Login.aspx");
                    }
                }
            }
        }
        protected void btnexporttoexcel_Click(object sender, EventArgs e)
        {
            try
            {
                Response.Clear();

                Response.ContentType = "application/excel";
                string filenam = "CallSheet" + Guid.NewGuid().ToString().Substring(0, 5) + ".xls";
                Response.AddHeader("content-disposition", "attachment; filename=" + filenam);

                StringBuilder sb    = new StringBuilder();
                string        style = @"<style type='text/css'>
        .CellText
        {
        width:30%;
        text-align:left !important;
        padding-right:4px !important; 
        padding-left:6px !important; 
        border-bottom:1px solid White;
        background-color:#1779CD; 
        color:White;
        }
         .CellText1
        {
        width:50%;
         border-bottom:1px solid black;
        text-align:left;
        padding-left:10px !important; 
        background-color:White; 
        color:Black;
        }
        .tabel_scroll td
        {
            padding:0;
            text-align:left;
        }</style> ";

                HttpContext.Current.Response.Write(style);
                StringWriter sw = new StringWriter(sb.Append("<table cellpadding='0' cellspacing='0' width='450px border='0'><tr><td style='text-transform:uppercase;'><h2>Call Sheet</h2>"));

                HtmlTextWriter htw = new HtmlTextWriter(sw);

                System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm();

                Controls.Add(form);
                form.Controls.Add(grdcallsheet);
                grdcallsheet.Columns[0].Visible = false;
                grdcallsheet.Columns[6].Visible = false;
                form.RenderControl(htw);
                sw.Close();
                Response.Write(sw.ToString() + "</td></tr></table>");
                Response.Flush();
                Response.End();
            }
            catch (Exception ex)
            {
                //
            }
        }
Example #12
0
        protected override void InitForm(System.Web.UI.HtmlControls.HtmlForm form)
        {
            if (!string.IsNullOrEmpty(Request.QueryString["Goods_ID"]))
            {
                mGoods = WebBLUtil.GetSingleDmo <Goods>(new Tuple <string, object>("ID", long.Parse(Request.QueryString["Goods_ID"])));
            }

            base.InitForm(form);
        }
        protected void Btn_ExportToExcel_Click(object sender, EventArgs e)
        {
            Response.Clear();
            Response.Buffer = true;
            Response.ClearContent();
            Response.ClearHeaders();
            Response.Charset = "";
            string         FileName       = "Calculation Sheet" + DateTime.Now + ".xls";
            StringWriter   strwritter     = new StringWriter();
            HtmlTextWriter htmltextwrtter = new HtmlTextWriter(strwritter);

            Response.Cache.SetCacheability(HttpCacheability.NoCache);
            Response.ContentType = "application/vnd.ms-excel";
            Response.AddHeader("Content-Disposition", "attachment;filename=" + FileName);
            Grd_SectionSummary.GridLines             = GridLines.Both;
            Grd_SectionSummary.HeaderStyle.Font.Bold = true;
            //Grd_SectionSummary.FooterStyle.HorizontalAlign = HorizontalAlign.Center;
            Grd_SectionSummary.HeaderStyle.ForeColor = System.Drawing.Color.White;
            //Grd_SectionSummary.RenderControl(htmltextwrtter);

            Grd_SectionSummary.Style.Add("background-color", "#FFFFFFF");

            for (int i = 0; i < Grd_SectionSummary.HeaderRow.Cells.Count; i++)
            {
                Grd_SectionSummary.HeaderRow.Cells[i].Style.Add("background-color", "#507CD1");
            }
            int j = 1;

            foreach (GridViewRow GvRows in Grd_SectionSummary.Rows)
            {
                GvRows.HorizontalAlign = HorizontalAlign.Center;
                //GvRows.BackColor = ConsoleColor.White;
                if (j <= Grd_SectionSummary.Rows.Count)
                {
                    if (j % 2 != 0)
                    {
                        for (int k = 0; k < GvRows.Cells.Count; k++)
                        {
                            GvRows.Cells[k].Style.Add("background-color", "#EFF3FB");
                        }
                    }
                }

                j++;
            }


            System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm();

            Controls.Add(form);
            form.Controls.Add(Grd_SectionSummary);
            form.RenderControl(htmltextwrtter);

            Response.Write(strwritter.ToString());
            Response.End();
        }
Example #14
0
 public string RenderControls(Control control)
 {
     control.Visible = true;
     control.EnableViewState = false;
     StringWriter output = new StringWriter();
     Page m_pageHolder = new Page();
     var form = new System.Web.UI.HtmlControls.HtmlForm();
     form.Controls.Add(control);
     m_pageHolder.Controls.Add(form);
     HttpContext.Current.Server.Execute(m_pageHolder, output, false);
     return output.ToString();
 }
        private string LoadCustomControl(string controlName)
        {
            Page page = new Page();
            UserControl userControl = (UserControl)page.LoadControl(controlName);
            userControl.EnableViewState = false;
            System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm();
            form.Controls.Add(userControl);
            page.Controls.Add(form);

            System.IO.StringWriter textWriter = new System.IO.StringWriter();
            HttpContext.Current.Server.Execute(page, textWriter, false);
            return textWriter.ToString();
        }
Example #16
0
 /// <summary>
 /// Ensures that the server form, which this control belongs to, has an enctype of "multipart/form-data".
 /// </summary>
 protected virtual void EnsureEncType()
 {
     System.Web.UI.Control parent = this.Parent;
     while (parent != null && parent.GetType() != typeof(System.Web.UI.HtmlControls.HtmlForm) && parent.GetType() != typeof(System.Web.UI.Page))
     {
         parent = parent.Parent;
     }
     System.Web.UI.HtmlControls.HtmlForm myForm = parent as System.Web.UI.HtmlControls.HtmlForm;
     if (myForm != null)
     {
         myForm.Enctype = "multipart/form-data";
     }
 }
Example #17
0
        protected void btnDescargarModelo1_Click(object sender, EventArgs e)
        {
            System.Text.StringBuilder sb  = new System.Text.StringBuilder();
            System.IO.StringWriter    sw  = new System.IO.StringWriter(sb);
            HtmlTextWriter            htw = new HtmlTextWriter(sw);

            Page page = new Page();

            System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm();

            page.EnableEventValidation = false;

            page.DesignerInitialize();

            page.Controls.Add(form);

            grDatos1.Columns[0].Visible  = true;
            grDatos1.Columns[1].Visible  = true;
            grDatos1.Columns[2].Visible  = true;
            grDatos1.Columns[3].Visible  = true;
            grDatos1.Columns[4].Visible  = true;
            grDatos1.Columns[5].Visible  = true;
            grDatos1.Columns[6].Visible  = true;
            grDatos1.Columns[7].Visible  = true;
            grDatos1.Columns[8].Visible  = true;
            grDatos1.Columns[9].Visible  = true;
            grDatos1.Columns[10].Visible = true;
            grDatos1.Columns[11].Visible = true;
            grDatos1.Columns[12].Visible = true;
            grDatos1.Columns[13].Visible = true;
            grDatos1.Columns[14].Visible = true;

            form.Controls.Add(grDatos1);

            page.RenderControl(htw);

            Response.Clear();
            Response.Buffer      = true;
            Response.ContentType = "application/vnd.ms-excel";
            Response.AddHeader("Content-Disposition", "attachment;filename=TablaModelo1.xls");
            Response.Charset         = "UTF-8";
            Response.ContentEncoding = System.Text.Encoding.Default;
            Response.Write(sb.ToString());
            Response.End();
        }
Example #18
0
        protected void btnExporttoExcel_Click(object sender, EventArgs e)
        {
            Response.ClearContent();
            Response.AddHeader("content-disposition", "attachment;filename=" + "SalesReport.xls");
            Response.ContentType = "application/excel";
            //System.IO.StringWriter sw = new System.IO.StringWriter();
            //HtmlTextWriter htw = new HtmlTextWriter(sw);
            //dg.RenderControl(htw);
            //Response.Write(sw.ToString());
            //Response.End();

            StringBuilder sb = new StringBuilder();

            StringWriter sw = new StringWriter(sb);

            HtmlTextWriter htw = new HtmlTextWriter(sw);

            System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm();

            for (int i = 0; i < grddata.Rows.Count; i++)
            {
                //Apply text style to each Row
                grddata.Rows[i].Cells[8].Attributes.Add("class", "textmode");
            }

            Controls.Add(form);
            form.Controls.Add(grddata);
            form.RenderControl(htw);

            string sTemp = sw.ToString();

            sTemp = sTemp.Replace("href=", "");
            string style = @"<style>.textmode{mso-number-format:'\@'}</style>";

            Response.Write(style);

            sw.Close();
            //Response.Write(sw.ToString());
            Response.Write(sTemp);
            Response.Flush();
            Response.End();
        }
Example #19
0
        public static string RenderPagerHTML(string usercontrolPath, UserControls.PagerData pager, int totalCount)
        {
            System.Web.UI.Page page    = new System.Web.UI.Page();
            UserControls.Pager ucPager = (UserControls.Pager)page.LoadControl(usercontrolPath + "/Pager.ascx");
            System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm();
            if (ucPager != null)
            {
                ucPager.CurrentPage  = pager.CurrentPage;
                ucPager.PageSize     = pager.PageSize;
                ucPager.RowCount     = totalCount;
                ucPager.AllowPaging  = false;
                ucPager.SelectMethod = pager.SelectMethod;
                ucPager.doPaging();
                form.Controls.Add(ucPager);
            }
            page.Controls.Add(form);
            foreach (System.Web.UI.Control ctrlpage in page.Controls)
            {
                foreach (System.Web.UI.Control ctrl in ctrlpage.Controls)
                {
                    UserControls.Pager ucPager1 = ctrl as UserControls.Pager;
                    if (ucPager1 != null)
                    {
                        ucPager1.BindControls(pager);
                        break;
                    }
                }
            }

            StringWriter textWriter = new StringWriter();

            HttpContext.Current.Server.Execute(page, textWriter, false);
            string htmlData = CleanHtml(textWriter.ToString());

            textWriter.Close();
            return(htmlData);
        }
        protected void ExportarGridAExcel(System.Web.UI.WebControls.GridView Grid)
        {
            try
            {
                System.Text.StringBuilder    sb  = new System.Text.StringBuilder();
                System.IO.StringWriter       sw  = new System.IO.StringWriter(sb);
                System.Web.UI.HtmlTextWriter htw = new HtmlTextWriter(sw);
                Page page = new Page();
                System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm();

                Grid.EnableViewState = false;

                //Deshabilitar la validación de eventos, sólo asp.net 2 ó posterior
                page.EnableEventValidation = false;

                //Realiza las inicializaciones de la instancia de la clase Page que requieran los diseñadores RAD.
                page.DesignerInitialize();
                page.Controls.Add(form);
                form.Controls.Add(Grid);
                page.RenderControl(htw);

                Response.Clear();
                Response.Buffer      = true;
                Response.ContentType = "application/vnd.ms-excel";
                Response.AddHeader("Content-Disposition", "attachment;filename=Reporte.xls");
                Response.Charset         = "UTF-8";
                Response.ContentEncoding = System.Text.Encoding.Default;
                Response.Write(sb.ToString());
                Response.End();
                sb   = null;
                sw   = null;
                htw  = null;
                page = null;
                form = null;
            }
            catch { }
        }
Example #21
0
        protected void btnExportar_Click(object sender, EventArgs e)
        {
            System.Text.StringBuilder sb  = new System.Text.StringBuilder();
            System.IO.StringWriter    sw  = new System.IO.StringWriter(sb);
            HtmlTextWriter            htw = new HtmlTextWriter(sw);

            Page page = new Page();

            System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm();


            GridView1.AllowPaging = false;
            GridView1.DataBind();
            GridView1.EnableViewState = false;



            // Deshabilitar la validación de eventos, sólo asp.net 2
            page.EnableEventValidation = false;

            // Realiza las inicializaciones de la instancia de la clase Page que requieran los diseñadores RAD.
            page.DesignerInitialize();

            page.Controls.Add(form);
            form.Controls.Add(GridView1);

            page.RenderControl(htw);

            Response.Clear();
            Response.Buffer      = true;
            Response.ContentType = "application/xls";
            Response.AddHeader("Content-Disposition", "attachment;filename=TodosLosAutos.xls");
            Response.Charset         = "UTF-8";
            Response.ContentEncoding = System.Text.Encoding.Default;
            Response.Write(sb.ToString());
            Response.End();
        }
        public void ProcessRequest(HttpContext context)
        {
            // We add control in Page tree collection
            using (var dummyPage = new LoadablePage())
            {
                Repository           bits = new Repository();
                RollableTableControl rc   = GetControl(context);
                rc.SetDataSource("Monsters Table 2");
                System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm();
                dummyPage.Controls.Add(form);
                dummyPage.Form.Controls.Add(rc);

                StringBuilder  sb = new StringBuilder();
                StringWriter   sw = new StringWriter(sb);
                HtmlTextWriter tw = new HtmlTextWriter(sw);
                try
                {
//					context.Server.Execute(dummyPage, context.Response.Output, true);
                    rc.RenderControl(tw);
                }
                catch (Exception ex) { }
                context.Response.Write(sb.ToString());
            }
        }
Example #23
0
        /// <summary>
        /// Creates the page's control tree via code instead of parsing an aspx.
        /// </summary>
        private void InitializeComponent()
        {
            this.Controls.Add(new LiteralControl("<html><head>"));

            String title = HttpContext.Current.Request.QueryString["title"];

            if (title != null && title.Length > 0)
            {
                this.Controls.Add(new LiteralControl("<title>" + title + "</title>"));
            }

            this.Controls.Add(new LiteralControl("<style>\r\n"));

            Boolean supportsSystemColors    = true;
            HttpBrowserCapabilities browser = this.Request.Browser;

            if (browser.Browser.ToUpper() == "NETSCAPE" && browser.MajorVersion < 5)
            {
                supportsSystemColors = false;
            }
            if (browser.Browser.ToUpper() == "IE" && browser.MajorVersion < 4)
            {
                supportsSystemColors = false;
            }
            if (browser.Browser.ToUpper() == "OPERA" && browser.MajorVersion < 5)
            {
                supportsSystemColors = false;
            }
            if (supportsSystemColors)
            {
                this.Controls.Add(new LiteralControl(@"
body {
	background-color: ButtonFace;
}
"));
            }

            if (browser.Browser.ToUpper() == "IE" && browser.MajorVersion > 3)
            {
                this.Controls.Add(new LiteralControl(@"
table {
	height:100%;
}
td.textCell {
	height:100%;
}
"));
            }

            this.Controls.Add(new LiteralControl("\r\n</style></head><body style='overflow:auto;border-width:0px;'>"));


            theForm    = new System.Web.UI.HtmlControls.HtmlForm();
            theForm.ID = "TheForm";
            this.Controls.Add(theForm);

            theForm.Controls.Add(new LiteralControl("<table width='100%' border='0'><tr><td class='textCell'>"));

            prompt      = new Label();
            prompt.ID   = "Prompt";
            prompt.Text = HttpContext.Current.Request.QueryString["prompt"];
            theForm.Controls.Add(prompt);

            theForm.Controls.Add(new LiteralControl("</td></tr><tr><td>"));

            entry                = new TextBox();
            entry.ID             = "Entry";
            entry.Style["width"] = "100%";
            entry.Text           = HttpContext.Current.Request.QueryString["defaulttext"];
            theForm.Controls.Add(entry);

            theForm.Controls.Add(new LiteralControl("</td></tr><tr><td valign='bottom' align='right'>"));

            ok        = new Button();
            ok.ID     = "OK";
            ok.Text   = "   OK   ";
            ok.Click += new EventHandler(ok_Click);
            theForm.Controls.Add(ok);

            theForm.Controls.Add(new LiteralControl("&nbsp;"));

            cancel        = new Button();
            cancel.ID     = "Cancel";
            cancel.Text   = "Cancel";
            cancel.Click += new EventHandler(cancel_Click);
            theForm.Controls.Add(cancel);

            theForm.Controls.Add(new LiteralControl("</td></tr></table>"));

            this.Controls.Add(new LiteralControl("</body></html>"));
        }
Example #24
0
        public static string RenderUserControl(string path, bool useFormLess,
                                               Dictionary <string, string> controlParams, string assemblyName, string controlName,
                                               HttpContext context)
        {
            System.Web.UI.Page pageHolder = null;
            if (useFormLess)
            {
                pageHolder = new FormlessPage()
                {
                    AppRelativeTemplateSourceDirectory = HttpRuntime.AppDomainAppVirtualPath
                };                                                                                                            //needed to resolve "~/"
            }
            else
            {
                pageHolder = new System.Web.UI.Page()
                {
                    AppRelativeTemplateSourceDirectory = HttpRuntime.AppDomainAppVirtualPath
                };
            }

            System.Web.UI.UserControl viewControl = null;

            //use path by default
            if (String.IsNullOrEmpty(path))
            {
                //load assembly and usercontrol when .ascx is compiled into a .dll
                string controlAssemblyName = string.Format("{0}.{1},{0}", assemblyName, controlName);

                Type type = Type.GetType(controlAssemblyName);
                viewControl = (System.Web.UI.UserControl)pageHolder.LoadControl(type, null);
            }
            else
            {
                viewControl = (System.Web.UI.UserControl)pageHolder.LoadControl(path);
            }

            pageHolder.EnableViewState  = false;
            viewControl.EnableViewState = false;

            if (controlParams != null && controlParams.Count > 0)
            {
                foreach (var keyValuePair in controlParams)
                {
                    Type viewControlType = viewControl.GetType();
                    System.Reflection.PropertyInfo property =
                        viewControlType.GetProperty(keyValuePair.Key);

                    if (property != null)
                    {
                        object   value;
                        DateTime date;
                        if (property.PropertyType == typeof(bool))
                        {
                            value = bool.Parse(keyValuePair.Value);
                        }
                        else if (property.PropertyType == typeof(Int32))
                        {
                            value = Int32.Parse(keyValuePair.Value);
                        }
                        else if (property.PropertyType == typeof(Guid))
                        {
                            value = new Guid(keyValuePair.Value);
                        }
                        else if (property.PropertyType == typeof(DateTime) && DateTime.TryParse(keyValuePair.Value, out date))
                        {
                            value = date;
                        }
                        else
                        {
                            value = keyValuePair.Value;
                        }

                        try
                        {
                            property.SetValue(viewControl, value, null);
                        }
                        catch (Exception ex)
                        {
                            //need to hook into external logger, throw?
                        }
                    }
                }
            }

            string parseIndex = System.Guid.NewGuid().ToString();

            if (useFormLess)
            {
                pageHolder.Controls.Add(viewControl);
            }
            else
            {
                System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm();
                System.Web.UI.ScriptManager         sm   = new System.Web.UI.ScriptManager();
                sm.EnableCdn         = true;
                sm.AjaxFrameworkMode = System.Web.UI.AjaxFrameworkMode.Disabled;
                System.Web.UI.WebControls.Literal litParseIndex = new System.Web.UI.WebControls.Literal();
                litParseIndex.Text = parseIndex;
                form.Controls.Add(sm);
                form.Controls.Add(litParseIndex);
                form.Controls.Add(viewControl);
                pageHolder.Controls.Add(form);
            }
            System.IO.StringWriter output = new System.IO.StringWriter();
            context.Server.Execute(pageHolder, output, false);

            string renderedContent = output.ToString();

            if (renderedContent.Contains("<form method=")) //have to have a form and scriptmananger to render sometimes but we don't want it on the client
            {
                renderedContent = renderedContent.Substring(renderedContent.IndexOf(parseIndex) + parseIndex.Length);
                renderedContent = renderedContent.Replace(renderedContent.Substring(renderedContent.LastIndexOf("</form>"), 7), "");
            }
            return(renderedContent);
        }
Example #25
0
        public System.Web.UI.Control RenderPage(GameState GameStatus, IPage Source, bool debugInfo)
        {
            System.Web.UI.Control Body;

            if (debugInfo)
            {
                return(RenderDebugInfo(GameStatus, Source));
            }

            System.Web.UI.HtmlControls.HtmlForm director = new System.Web.UI.HtmlControls.HtmlForm()
            {
                Action = "."
            };
            director.EnableViewState = false;
            director.ViewStateMode   = System.Web.UI.ViewStateMode.Disabled;
            director.Style["border"] = "1px solid black";
            Body = director;

            if (Source.Background != null)
            {
                Body.Controls.Add(ImageFromObject(Source.Background, "", false));
            }
            else
            {
                if (null != GameStatus &&
                    null != GameStatus.Player &&
                    null != GameStatus.Player.Avatar &&
                    null != GameStatus.Player.Avatar.Picture)
                {
                    System.Web.UI.HtmlControls.HtmlTable DisplayTable =
                        new System.Web.UI.HtmlControls.HtmlTable();
                    DisplayTable.Rows.Add(new System.Web.UI.HtmlControls.HtmlTableRow()
                    {
                        Cells =
                        {
                            new System.Web.UI.HtmlControls.HtmlTableCell()
                            {
                                Controls =
                                {
                                    ImageFromObject(
                                        GameStatus.Player.Avatar.Picture,
                                        "Player_Avatar_Picture",
                                        false
                                        )
                                }
                            },
                            new System.Web.UI.HtmlControls.HtmlTableCell()
                            {
                                Controls =
                                {
                                    RenderNutrientBlock(GameStatus.Player.Nutrients,
                                                        "Status", false
                                                        )
                                }
                            },
                            new System.Web.UI.HtmlControls.HtmlTableCell()
                            {
                                Controls =
                                {
                                    RenderNutrientBlock(GameStatus.CurrentDelta,
                                                        "Current", false
                                                        )
                                }
                            },
                            new System.Web.UI.HtmlControls.HtmlTableCell()
                            {
                                Controls =
                                {
                                    RenderNutrientBlock(GameStatus.DailyDelta,
                                                        "Change Today", true
                                                        )
                                }
                            }
                        }
                    });
                    DisplayTable.Rows.Add(new System.Web.UI.HtmlControls.HtmlTableRow()
                    {
                        Cells =
                        {
                            new System.Web.UI.HtmlControls.HtmlTableCell()
                            {
                                Controls =
                                {
                                    new System.Web.UI.WebControls.Label()
                                    {
                                        Text = "<br/>Energy: "
                                               + GameStatus.Player.Energy.ToString()
                                    },
                                    new System.Web.UI.WebControls.Label()
                                    {
                                        Text = "<br/>Focus: "
                                               + GameStatus.Player.Focus.ToString()
                                    },
                                    new System.Web.UI.WebControls.Label()
                                    {
                                        Text = "<br/>Hunger: "
                                               + GameStatus.Player.Hunger.ToString()
                                    },
                                    new System.Web.UI.WebControls.Label()
                                    {
                                        Text = "<br/>kCal/target: "
                                               + GameStatus.Player.Calories.ToString()
                                               + " / "
                                               + GameStatus.Player.TargetCalories.ToString()
                                    },
                                }
                            }
                        }
                    });
                    Body.Controls.Add(DisplayTable);
                }
            }
            if (Source.Title != null)
            {
                Body.Controls.Add(new System.Web.UI.HtmlControls.HtmlGenericControl("h3")
                {
                    InnerHtml = Source.Title
                });
            }
            if (Source.Message != null)
            {
                System.Web.UI.WebControls.Panel MessagePanel = new System.Web.UI.WebControls.Panel();
                MessagePanel.Controls.Add(new System.Web.UI.WebControls.Label()
                {
                    Text = Source.Message
                });
                Body.Controls.Add(MessagePanel);
            }

            System.Web.UI.ControlCollection form = Body.Controls;

            ControlLookup["CurrentPage"] = new System.Web.UI.HtmlControls.HtmlInputHidden()
            {
                ID            = "stg_curpage",
                Value         = Source.MainType.ToString(),
                ViewStateMode = System.Web.UI.ViewStateMode.Disabled
            };
            form.Add(ControlLookup["CurrentPage"]);

            /* Special Handling for Character Creation */
            if (Source.MainType == GameState.PageType.Char_Creation)
            {
                form.Add(CharCreateControls(Source));
            }

            if (null != Source.PrimaryOptions)
            {
                form.Add(RenderOptions(Source.PrimaryOptions, true));
            }
            if (null != Source.AppliedOptions)
            {
                form.Add(RenderOptions(Source.AppliedOptions, false));
            }

            return(Body);
        }
Example #26
0
        /// <summary>
        /// Creates the page's control tree via code instead of parsing an aspx.
        /// </summary>
        private void InitializeComponent()
        {
            this.Controls.Add(new LiteralControl("<html><head>"));

            String title = HttpContext.Current.Request.QueryString["title"];
            if ( title != null && title.Length > 0 ) {
                this.Controls.Add( new LiteralControl("<title>" + title + "</title>"));
            }

            this.Controls.Add( new LiteralControl("<style>\r\n") );

            Boolean supportsSystemColors = true;
            HttpBrowserCapabilities browser = this.Request.Browser;
            if ( browser.Browser.ToUpper() == "NETSCAPE" && browser.MajorVersion < 5 ) {
                supportsSystemColors = false;
            }
            if ( browser.Browser.ToUpper() == "IE" && browser.MajorVersion < 4 ) {
                supportsSystemColors = false;
            }
            if ( browser.Browser.ToUpper() == "OPERA" && browser.MajorVersion < 5 ) {
                supportsSystemColors = false;
            }
            if ( supportsSystemColors ) {
                this.Controls.Add( new LiteralControl(@"
            body {
            background-color: ButtonFace;
            }
            "));
            }

            if ( browser.Browser.ToUpper() == "IE" && browser.MajorVersion > 3 ) {
            this.Controls.Add( new LiteralControl( @"
            table {
            height:100%;
            }
            td.textCell {
            height:100%;
            }
            "));
            }

            this.Controls.Add(new LiteralControl("\r\n</style></head><body style='overflow:auto;border-width:0px;'>"));

            theForm = new System.Web.UI.HtmlControls.HtmlForm();
            theForm.ID = "TheForm";
            this.Controls.Add(theForm);

            theForm.Controls.Add(new LiteralControl("<table width='100%' border='0'><tr><td class='textCell'>"));

            prompt = new Label();
            prompt.ID = "Prompt";
            prompt.Text = HttpContext.Current.Request.QueryString["prompt"];
            theForm.Controls.Add(prompt);

            theForm.Controls.Add(new LiteralControl("</td></tr><tr><td>"));

            entry = new TextBox();
            entry.ID = "Entry";
            entry.Style["width"] = "100%";
            entry.Text = HttpContext.Current.Request.QueryString["defaulttext"];
            theForm.Controls.Add(entry);

            theForm.Controls.Add(new LiteralControl("</td></tr><tr><td valign='bottom' align='right'>"));

            ok = new Button();
            ok.ID = "OK";
            ok.Text = "   OK   ";
            ok.Click += new EventHandler(ok_Click);
            theForm.Controls.Add(ok);

            theForm.Controls.Add(new LiteralControl("&nbsp;"));

            cancel = new Button();
            cancel.ID = "Cancel";
            cancel.Text = "Cancel";
            cancel.Click += new EventHandler(cancel_Click);
            theForm.Controls.Add(cancel);

            theForm.Controls.Add(new LiteralControl("</td></tr></table>"));

            this.Controls.Add(new LiteralControl("</body></html>"));
        }
Example #27
0
        public static string RenderUserControl(string path, bool useFormLess,
            Dictionary<string, string> controlParams, string assemblyName, string controlName,
            HttpContext context)
        {
            System.Web.UI.Page pageHolder = null;
            if (useFormLess)
            {
                pageHolder = new FormlessPage() { AppRelativeTemplateSourceDirectory = HttpRuntime.AppDomainAppVirtualPath }; //needed to resolve "~/"
            }
            else
            {
                pageHolder = new System.Web.UI.Page() { AppRelativeTemplateSourceDirectory = HttpRuntime.AppDomainAppVirtualPath };
            }

            System.Web.UI.UserControl viewControl = null;

            //use path by default
            if (String.IsNullOrEmpty(path))
            {
                //load assembly and usercontrol when .ascx is compiled into a .dll
                string controlAssemblyName = string.Format("{0}.{1},{0}", assemblyName, controlName);

                Type type = Type.GetType(controlAssemblyName);
                viewControl = (System.Web.UI.UserControl)pageHolder.LoadControl(type, null);
            }
            else
            {
                viewControl = (System.Web.UI.UserControl)pageHolder.LoadControl(path);

            }

            pageHolder.EnableViewState = false;
            viewControl.EnableViewState = false;

            if (controlParams != null && controlParams.Count > 0)
            {
                foreach (var keyValuePair in controlParams)
                {
                    Type viewControlType = viewControl.GetType();
                    System.Reflection.PropertyInfo property =
                       viewControlType.GetProperty(keyValuePair.Key);

                    if (property != null)
                    {

                        object value;
                        DateTime date;
                        if (property.PropertyType == typeof(bool))
                            value = bool.Parse(keyValuePair.Value);
                        else if (property.PropertyType == typeof(Int32))
                            value = Int32.Parse(keyValuePair.Value);
                        else if (property.PropertyType == typeof(Guid))
                            value = new Guid(keyValuePair.Value);
                        else if (property.PropertyType == typeof(DateTime) && DateTime.TryParse(keyValuePair.Value, out date))
                            value = date;
                        else
                            value = keyValuePair.Value;

                        try
                        {
                            property.SetValue(viewControl, value, null);
                        }
                        catch (Exception ex)
                        {
                            //need to hook into external logger, throw?
                        }

                    }

                }
            }

            string parseIndex = System.Guid.NewGuid().ToString();
            if (useFormLess)
            {
                pageHolder.Controls.Add(viewControl);
            }
            else
            {
                System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm();
                System.Web.UI.ScriptManager sm = new System.Web.UI.ScriptManager();
                sm.EnableCdn = true;
                sm.AjaxFrameworkMode = System.Web.UI.AjaxFrameworkMode.Disabled;
                System.Web.UI.WebControls.Literal litParseIndex = new System.Web.UI.WebControls.Literal();
                litParseIndex.Text = parseIndex;
                form.Controls.Add(sm);
                form.Controls.Add(litParseIndex);
                form.Controls.Add(viewControl);
                pageHolder.Controls.Add(form);
            }
            System.IO.StringWriter output = new System.IO.StringWriter();
            context.Server.Execute(pageHolder, output, false);

            string renderedContent = output.ToString();

            if (renderedContent.Contains("<form method=")) //have to have a form and scriptmananger to render sometimes but we don't want it on the client
            {
                renderedContent = renderedContent.Substring(renderedContent.IndexOf(parseIndex) + parseIndex.Length);
                renderedContent = renderedContent.Replace(renderedContent.Substring(renderedContent.LastIndexOf("</form>"), 7), "");
            }
            return renderedContent;
        }
        //Export to Word
        //protected void btn_ExportExcel_Click(object sender, EventArgs e)
        //{
        //    Response.Clear();
        //    Response.Buffer = true;
        //    Response.ClearContent();
        //    Response.ClearHeaders();
        //    Response.Charset = "";
        //    string FileName = "Calculation Sheet" + DateTime.Now + ".docx";
        //    StringWriter strwritter = new StringWriter();
        //    HtmlTextWriter htmltextwrtter = new HtmlTextWriter(strwritter);
        //    Response.Cache.SetCacheability(HttpCacheability.NoCache);
        //    Response.ContentType = "application/vnd.ms-word";
        //    Response.AddHeader("Analysis Results", "attachment;filename=" + FileName);
        //    grv_analysisResults.GridLines = GridLines.Both;
        //    //grv_analysisResults.HeaderStyle.Font.Bold = true;
        //    //////////////////////////

        //    //grv_analysisResults.AllowPaging = false;

        //    //grv_analysisResults.DataBind();

        //    //Response.ClearContent();
        //    //Response.AddHeader("Analysis Results", string.Format("attachment;filename{0}", "Countries.doc"));

        //    //Response.Charset = "";
        //    //Response.ContentType = "application/ms-word";
        //    //StringWriter sw = new StringWriter();

        //    //HtmlTextWriter htw = new HtmlTextWriter(sw);


        //    System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm();

        //    Controls.Add(form);
        //    form.Controls.Add(grv_analysisResults);
        //    form.RenderControl(htmltextwrtter);
        //    //grv_analysisResults.RenderControl(htw);

        //    Response.Write(strwritter.ToString());
        //    Response.End();
        //}

        //Export to Excel
        protected void btn_ExportWord_Click(object sender, EventArgs e)
        {
            Response.Clear();
            Response.Buffer = true;
            Response.ClearContent();
            Response.ClearHeaders();
            Response.Charset = "";
            string         FileName       = "Calculation Sheet" + DateTime.Now + ".xls";
            StringWriter   strwritter     = new StringWriter();
            HtmlTextWriter htmltextwrtter = new HtmlTextWriter(strwritter);

            Response.Cache.SetCacheability(HttpCacheability.NoCache);
            Response.ContentType = "application/vnd.ms-excel";
            Response.AddHeader("Content-Disposition", "attachment;filename=" + FileName);
            grv_analysisResults.GridLines             = GridLines.Both;
            grv_analysisResults.HeaderStyle.Font.Bold = true;
            //grv_analysisResults.FooterStyle.HorizontalAlign = HorizontalAlign.Center;
            grv_analysisResults.HeaderStyle.ForeColor = System.Drawing.Color.White;
            //grv_analysisResults.RenderControl(htmltextwrtter);

            grv_analysisResults.Style.Add("background-color", "#FFFFFFF");

            for (int i = 0; i < grv_analysisResults.HeaderRow.Cells.Count; i++)
            {
                grv_analysisResults.HeaderRow.Cells[i].Style.Add("background-color", "#507CD1");
            }
            int j = 1;

            foreach (GridViewRow GvRows in grv_analysisResults.Rows)
            {
                GvRows.HorizontalAlign = HorizontalAlign.Center;
                //GvRows.BackColor = ConsoleColor.White;
                if (j <= grv_analysisResults.Rows.Count)
                {
                    if (j % 2 != 0)
                    {
                        for (int k = 0; k < GvRows.Cells.Count; k++)
                        {
                            GvRows.Cells[k].Style.Add("background-color", "#EFF3FB");
                        }
                    }
                }

                j++;
            }


            System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm();

            Controls.Add(form);
            form.Controls.Add(grv_analysisResults);
            form.RenderControl(htmltextwrtter);

            Response.Write(strwritter.ToString());
            Response.End();


            //grv_analysisResults.AllowPaging = false;

            //Response.ClearContent();
            //Response.Buffer = true;

            //Response.AddHeader("Analysis Results", string.Format("attachment;filename{0}", "Countries.xls"));

            //Response.ContentType = "application/ms-excel";
            //StringWriter sw = new StringWriter();

            //HtmlTextWriter htw = new HtmlTextWriter(sw);
            //grv_analysisResults.Style.Add("background-color", "#FFFFFFF");

            //for (int i = 0; i < grv_analysisResults.HeaderRow.Cells.Count; i++)
            //{
            //    grv_analysisResults.HeaderRow.Cells[i].Style.Add("background-color", "#507CD1");
            //}
            //int j = 1;

            //foreach (GridViewRow GvRows  in grv_analysisResults.Rows)
            //{
            //    //GvRows.BackColor = ConsoleColor.White;
            //    if (j <= grv_analysisResults.Rows.Count)
            //    {
            //        if (j % 2 != 0)
            //        {
            //            for (int k=0; k< GvRows.Cells.Count; k++)
            //            {
            //                GvRows.Cells[k].Style.Add("background-color", "#EFF3FB");

            //            }
            //        }
            //    }

            //    j++;
            //}
            //System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm();

            //Controls.Add(form);
            //form.Controls.Add(grv_analysisResults);
            //form.RenderControl(htw);

            ////grv_analysisResults.RenderControl(htw);
            //Response.Write(sw.ToString());
            //Response.End();
        }
Example #29
0
 public string QueryOrderMeal(string txtCompany, string txtMember, int rbStatus, int rbModel, string txtDateStart, string txtDateEnd, int cboPage, int txtPageIndex, bool isViewAll)
 {
     try
     {
         //if (AppContext.Context.CurrentSubSys != SubSystem.Admin ||
         //    !AppContext.Context.User.AdminRoleId.HasValue ||
         //      AppContext.Context.User.AdminRoleId.Value <= 0)
         //    return Utilities.GetWebServicesResult(-1, "你无权使用此服务.");
         using (Page page = new Page( )
             {
                 EnableViewState = false
             })
         {
             System.Web.UI.HtmlControls.HtmlForm form = new System.Web.UI.HtmlControls.HtmlForm( );
             page.Controls.Add(form);
             var gridView = (UcGridView)(page.LoadControl("~/Controls/UcGridView.ascx"));
             var container = new System.Web.UI.HtmlControls.HtmlGenericControl("div")
             {
                 ID = "container"
             };
             gridView.AllowPaper = true;
             gridView.ShowHeader = true;
             form.Controls.Add(container);
             container.Controls.Add(gridView);
             form.ID = "xForm";
             page.Load += new EventHandler((sender, e) =>
             {
                 App.SetOrderMealQueryView(gridView, txtCompany, txtMember, rbStatus, rbModel, txtDateStart, txtDateEnd,isViewAll);
             });
             StringBuilder sb = new StringBuilder( );
             using (var writer = new StringWriter(sb))
             {
                 HttpContext.Current.Server.Execute(page, writer, true);
             }
             return sb.ToString( );
         }
     }
     catch (Exception ex)
     {
         Logging.Log("OrderMealServices->QueryOrderMeal", ex);
         return Utilities.GetWebServicesResult(-1, ex.Message);
     }
 }
Example #30
0
		/// -----------------------------------------------------------------------------
		/// <summary>
		/// This method is responsible for obtaining the HTML of a given tab.
		/// </summary>
		/// <param name="objTab"></param>
		/// <returns></returns>
		/// <remarks>
		/// The original technique used here is the same as the one found on this site.
		/// http://aspnet.4guysfromrolla.com/articles/102203-1.2.aspx
		/// 
		/// EventValidation must be disabled in order to work (.NET 2.0 specific)
		/// </remarks>
		/// <history>
		/// 	[Jon Henning]	8/9/2006	Created
		/// </history>
		/// -----------------------------------------------------------------------------
		private string GetTabContents(DNNTab objTab)
		{
			objTab.RaiseSetupDefaultsEvent(true);

			System.Text.StringBuilder objSB = new System.Text.StringBuilder();
			System.IO.StringWriter objSW = new System.IO.StringWriter(objSB);
			HtmlTextWriter objHW = new HtmlTextWriter(objSW);
			System.Web.UI.HtmlControls.HtmlForm objForm;
			Page objPage;

			objPage = this.Page;
			objForm = DNNTabStrip.FindForm(this);

			if (objForm == null)
			{
				objForm = new System.Web.UI.HtmlControls.HtmlForm();
				objPage.Controls.Add(objForm);
			}
			else
			{
				objForm.Controls.Clear();
			}

			objTab.ID = objTab.UniqueID;
			objForm.Controls.Add(new LiteralControl(TAB_CONTENT_DELIMITER));
			objForm.Controls.Add(objTab);
			objForm.Controls.Add(new LiteralControl(TAB_CONTENT_DELIMITER));
			//Me.SelectedTab = objTab    'JH 1/29/07
			objTab.SetParent(this);
			objTab.Enabled = true;

			//Experimental rendering using new page object
			//instead of clearing the form's controls.  Unfortunately, there is
			//no way without reflection invoking a private member to associate 
			//the httpcontext object to a new page object.
			//initial idea behind came from http://aspnet.4guysfromrolla.com/articles/102203-1.2.aspx

			//objPage = New Page
			//If System.Environment.Version.Major >= 2 Then
			//    'EventValidation must be disabled in order to work...  since we are not .NET 2.0 specific yet we cannot do this here, so it needs to be done in web.config
			//    objPage.GetType.InvokeMember("EnableEventValidation", Reflection.BindingFlags.SetProperty, Nothing, objPage, New Object() {False})
			//End If

			//objPage.EnableViewState = False
			//objForm = New HtmlControls.HtmlForm
			//Dim objValidators As Collection = New Collection

			//For Each objValidator As IValidator In Me.Page.Validators
			//    objValidators.Add(objValidator)
			//Next

			//objPage.DesignerInitialize()    'This causes the Page class's protected InitRecursive() method to be called, which preps a number of properties needed for rendering.
			//objPage.GetType.InvokeMember("SetIntrinsics", Reflection.BindingFlags.InvokeMethod Or Reflection.BindingFlags.NonPublic Or Reflection.BindingFlags.Instance, Nothing, objPage, New Object() {HttpContext.Current})
			//objPage.Controls.Add(objForm)
			//objTab.ID = objTab.UniqueID
			//objForm.Controls.Add(New LiteralControl(TAB_CONTENT_DELIMITER))
			//objForm.Controls.Add(objTab)
			//objForm.Controls.Add(New LiteralControl(TAB_CONTENT_DELIMITER))
			//Me.SelectedTab = objTab
			//objTab.SetParent(Me)
			//objTab.Enabled = True

			//Dim oCtl As Control
			//For Each objValidator As Control In objValidators
			//    'Me.Page.Validators.Remove(objValidator)
			//    'CType(objValidator, Control).Page = objPage
			//    'objPage.Validators.Add(objValidator)
			//    objTab.Controls.Add(objValidator)
			//Next

			objForm.RenderControl(objHW);

               string strReturn = objSB.ToString().Split(new String[]{TAB_CONTENT_DELIMITER}, StringSplitOptions.None)[1];
			//parse out only the contents of the tab's panel by using a delimiter
			HTMLElementCollection objScripts = this.GetScripts(objSB.ToString());
			//GetFormHTML())
			if (objScripts.Count > 0)
			{
                   strReturn += ClientAPI.COLUMN_DELIMITER + objScripts.ToJSON();
			}
			return strReturn;
			//Me.Tabs.FindTab(objTab.ID).RenderControl(objHW)
			//Return objSB.ToString()

		}
Example #31
0
        //Nuevo Controlador Error
        public void Controlador_Error_old2(Exception Ex, HttpResponse Resp, Enum TipoMessage = null)
        {
            if (Ex.Message == "Subproceso anulado.")
            {
                return;
            }
            if (Repeat == false)
            {
                Page   PG           = HttpContext.Current.Handler as Page;
                string NombrePagina = HttpContext.Current.Session["NombrePagina"] != null ? HttpContext.Current.Session["NombrePagina"].ToString() : PG.Request.Url.Segments[PG.Request.Url.Segments.Length - 1];
                string usuario      = "";
                Repeat = true;
                string CodError = "";

                if (TipoMessage == null)
                {
                    TipoMessage = TipoMensaje.Etiqueta;
                }

                if (HttpContext.Current.Request.Cookies.AllKeys.Contains("NombreUsuario") == true)
                {
                    usuario = HttpContext.Current.Request.Cookies.Get("NombreUsuario").Value;//Accedo a la cookie del NombreUsuario
                }
                else
                {
                    usuario = HttpContext.Current.Request.UserHostName; //Ip del Usuario que ejecuta
                }
                string     error      = Ex.Message.Replace("'", " ");   //Reemplazo comillas simples para evitar error al ejecutar la Insercion
                StackTrace stackTrace = new StackTrace(Ex, true);
                error = error + Environment.NewLine + "Origen:" + stackTrace.GetFrame(stackTrace.FrameCount - 1).GetMethod().Name + Environment.NewLine + "Linea: " + stackTrace.GetFrame(stackTrace.FrameCount - 1).GetFileLineNumber();

                CodError = DateTime.Now.ToString("yyyy-MMddhhmmss");//Codigo unico del error para referencia del usuario

                ExecuteSql("INSERT INTO COMUN..ErroresSistema (Sistema,Descripcion, Fecha, Usuario, Pantalla,CodError) VALUES('" + Nombre_Sistema + "','" + error + "',GETDATE(),'" + usuario + "','" + NombrePagina + "','" + CodError + "')");


                //WebUserControlMensajes WUCMensajes = (WebUserControlMensajes)PG.LoadControl(@"~/Procesos/WebUserControlMensajes.ascx");

                //Verifico si la pagina esta asociado a un Site Master
                var master = PG.Master;
                //Validar que tipo de mensaje se mostrara
                if (TipoMessage.ToString() == "MsgBox")
                {
                    //WebUserControlMensajes WUCMensajes = (WebUserControlMensajes)PG.LoadControl(@"~/Procesos/WebUserControlMensajes.ascx");
                    if (master != null)
                    {
                        System.Web.UI.HtmlControls.HtmlForm form = (System.Web.UI.HtmlControls.HtmlForm)PG.Master.FindControl("form1");
                        //  form.Controls.Add(WUCMensajes);
                    }
                    else
                    {
                        System.Web.UI.HtmlControls.HtmlForm form = (System.Web.UI.HtmlControls.HtmlForm)PG.FindControl("form1");
                        //form.Controls.Add(WUCMensajes);
                    }
                    //WUCMensajes.MostrarPopup(Ex.Message, 0, false);
                }
                else
                {
                    if (master != null)
                    {
                        ASPxLabel lblMaster = (ASPxLabel)PG.Master.FindControl("lblMaster");
                        lblMaster.Text = "Se ha producido un error, reintente o contacte al Administrador del Sistema. Ref.: " + CodError;;
                    }
                    else
                    {
                        ASPxLabel lblMaster = (ASPxLabel)PG.Form.FindControl("lblMaster");
                        lblMaster.Text = Ex.Message;
                    }
                }
            }
        }
        private void _Count_Radio(System.Web.UI.ControlCollection objcol, string radname)
        {
            try
            {
                int iID;
                int iNO;

                foreach (object obj in objcol)
                {
                    System.Type itype = obj.GetType();
                    if (itype.Namespace == "Ext.Net" || itype.Namespace == "System.Web.UI.HtmlControls")
                    {
                        switch (itype.Name)
                        {
                        case "HtmlForm":
                            System.Web.UI.HtmlControls.HtmlForm htmlform = (System.Web.UI.HtmlControls.HtmlForm)obj;
                            _Count_Radio(htmlform.Controls, radname);
                            break;

                        case "Viewport":
                            Ext.Net.Viewport viewport = (Ext.Net.Viewport)obj;
                            _Count_Radio(viewport.Controls, radname);
                            break;

                        case "FormPanel":
                            Ext.Net.FormPanel formpanel = (Ext.Net.FormPanel)obj;
                            _Count_Radio(formpanel.Controls, radname);
                            break;

                        case "Panel":
                            Ext.Net.Panel panel = (Ext.Net.Panel)obj;
                            _Count_Radio(panel.Controls, radname);
                            break;

                        case "TabPanel":
                            Ext.Net.TabPanel tabpanel = (Ext.Net.TabPanel)obj;
                            _Count_Radio(tabpanel.Controls, radname);
                            break;

                        case "Container":
                            Ext.Net.Container container = (Ext.Net.Container)obj;
                            _Count_Radio(container.Controls, radname);
                            break;

                        case "FieldSet":
                            Ext.Net.FieldSet fieldset = (Ext.Net.FieldSet)obj;
                            _Count_Radio(fieldset.Controls, radname);
                            break;

                        case "ContentContainer":
                            Ext.Net.ContentContainer contentcontainer = (Ext.Net.ContentContainer)obj;
                            _Count_Radio(contentcontainer.Controls, radname);
                            break;

                        case "RadioGroup":
                            Ext.Net.RadioGroup radioGroup = (Ext.Net.RadioGroup)obj;
                            _Count_Radio(radioGroup.Controls, radname);
                            break;

                        case "Radio":
                            Ext.Net.Radio radio = (Ext.Net.Radio)obj;

                            string[] s = radio.ID.Split('_');
                            iID = Convert.ToInt16(s[1]);
                            iNO = Convert.ToInt16(s[2]);

                            if (iID > 1 && iID < 38)
                            {
                                if (radio.Value.Equals(true))
                                {
                                    iSCORE = iSCORE + iNO - 1;
                                }
                            }
                            break;

                        case "":

                            break;
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                _ErrorMsgShow(ex.Message.ToString());
            }
        }
Example #33
0
        public Control ParseWithControls(page umbPage)
        {
            System.Web.HttpContext.Current.Trace.Write("umbracoTemplate", "Start parsing");

            if (System.Web.HttpContext.Current.Items["macrosAdded"] == null)
                System.Web.HttpContext.Current.Items.Add("macrosAdded", 0);

            StringBuilder tempOutput = _templateOutput;

            Control pageLayout = new Control();
            Control pageHeader = new Control();
            Control pageFooter = new Control();
            Control pageContent = new Control();
            System.Web.UI.HtmlControls.HtmlForm pageForm = new System.Web.UI.HtmlControls.HtmlForm();
            System.Web.UI.HtmlControls.HtmlHead pageAspNetHead = new System.Web.UI.HtmlControls.HtmlHead();

            // Find header and footer of page if there is an aspnet-form on page
            if (_templateOutput.ToString().ToLower().IndexOf("<?aspnet_form>") > 0 ||
                _templateOutput.ToString().ToLower().IndexOf("<?aspnet_form disablescriptmanager=\"true\">") > 0)
            {
                pageForm.Attributes.Add("method", "post");
                pageForm.Attributes.Add("action", Convert.ToString(System.Web.HttpContext.Current.Items["VirtualUrl"]));

                // Find header and footer from tempOutput
                int aspnetFormTagBegin = tempOutput.ToString().ToLower().IndexOf("<?aspnet_form>");
                int aspnetFormTagLength = 14;
                int aspnetFormTagEnd = tempOutput.ToString().ToLower().IndexOf("</?aspnet_form>") + 15;

                // check if we should disable the script manager
                if (aspnetFormTagBegin == -1)
                {
                    aspnetFormTagBegin =
                        _templateOutput.ToString().ToLower().IndexOf("<?aspnet_form disablescriptmanager=\"true\">");
                    aspnetFormTagLength = 42;
                }
                else
                {
                    ScriptManager sm = new ScriptManager();
                    sm.ID = "umbracoScriptManager";
                    pageForm.Controls.Add(sm);
                }


                StringBuilder header = new StringBuilder(tempOutput.ToString().Substring(0, aspnetFormTagBegin));

                // Check if there's an asp.net head element in the header
                if (header.ToString().ToLower().Contains("<?aspnet_head>"))
                {
                    StringBuilder beforeHeader = new StringBuilder(header.ToString().Substring(0, header.ToString().ToLower().IndexOf("<?aspnet_head>")));
                    header.Remove(0, header.ToString().ToLower().IndexOf("<?aspnet_head>") + 14);
                    StringBuilder afterHeader = new StringBuilder(header.ToString().Substring(header.ToString().ToLower().IndexOf("</?aspnet_head>") + 15, header.Length - header.ToString().ToLower().IndexOf("</?aspnet_head>") - 15));
                    header.Remove(header.ToString().ToLower().IndexOf("</?aspnet_head>"), header.Length - header.ToString().ToLower().IndexOf("</?aspnet_head>"));

                    // Find the title from head
                    MatchCollection matches = Regex.Matches(header.ToString(), @"<title>(.*?)</title>", RegexOptions.IgnoreCase | RegexOptions.Multiline);
                    if (matches.Count > 0)
                    {
                        StringBuilder titleText = new StringBuilder();
                        HtmlTextWriter titleTextTw = new HtmlTextWriter(new System.IO.StringWriter(titleText));
                        parseStringBuilder(new StringBuilder(matches[0].Groups[1].Value), umbPage).RenderControl(titleTextTw);
                        pageAspNetHead.Title = titleText.ToString();
                        header = new StringBuilder(header.ToString().Replace(matches[0].Value, ""));
                    }

                    pageAspNetHead.Controls.Add(parseStringBuilder(header, umbPage));
                    pageAspNetHead.ID = "head1";

                    // build the whole header part
                    pageHeader.Controls.Add(parseStringBuilder(beforeHeader, umbPage));
                    pageHeader.Controls.Add(pageAspNetHead);
                    pageHeader.Controls.Add(parseStringBuilder(afterHeader, umbPage));

                }
                else
                    pageHeader.Controls.Add(parseStringBuilder(header, umbPage));


                pageFooter.Controls.Add(parseStringBuilder(new StringBuilder(tempOutput.ToString().Substring(aspnetFormTagEnd, tempOutput.Length - aspnetFormTagEnd)), umbPage));
                tempOutput.Remove(0, aspnetFormTagBegin + aspnetFormTagLength);
                aspnetFormTagEnd = tempOutput.ToString().ToLower().IndexOf("</?aspnet_form>");
                tempOutput.Remove(aspnetFormTagEnd, tempOutput.Length - aspnetFormTagEnd);


                //throw new ArgumentException(tempOutput.ToString());
                pageForm.Controls.Add(parseStringBuilder(tempOutput, umbPage));

                pageContent.Controls.Add(pageHeader);
                pageContent.Controls.Add(pageForm);
                pageContent.Controls.Add(pageFooter);
                return pageContent;

            }
            else
                return parseStringBuilder(tempOutput, umbPage);

        }
        private void InitializeComponent()
        {
            this.Controls.Add(new LiteralControl("<html><head>"));

            String title = HttpContext.Current.Request.QueryString["title"];

            if (title != null && title.Length > 0)
            {
                this.Controls.Add(new LiteralControl("<title>" + title + "</title>"));
            }

            this.Controls.Add(new LiteralControl("<style>\r\n"));

            Boolean supportsSystemColors    = true;
            HttpBrowserCapabilities browser = this.Request.Browser;

            if (String.Compare(browser.Browser, "NETSCAPE", StringComparison.OrdinalIgnoreCase) == 0 && browser.MajorVersion < 5)
            {
                supportsSystemColors = false;
            }
            if (String.Compare(browser.Browser, "IE", StringComparison.OrdinalIgnoreCase) == 0 && browser.MajorVersion < 4)
            {
                supportsSystemColors = false;
            }
            if (String.Compare(browser.Browser, "OPERA", StringComparison.OrdinalIgnoreCase) == 0 && browser.MajorVersion < 5)
            {
                supportsSystemColors = false;
            }
            if (supportsSystemColors)
            {
                this.Controls.Add(new LiteralControl(@"
body {
	background-color: ButtonFace;
}
"));
            }

            if (String.Compare(browser.Browser, "IE", StringComparison.OrdinalIgnoreCase) == 0 && browser.MajorVersion > 3)
            {
                this.Controls.Add(new LiteralControl(@"
table {
	height:100%;
}
td.textCell {
	height:100%;
}
"));
            }

            this.Controls.Add(new LiteralControl("\r\n</style></head><body style='overflow:auto;border-width:0px;'>"));


            theForm    = new System.Web.UI.HtmlControls.HtmlForm();
            theForm.ID = "TheForm";
            this.Controls.Add(theForm);

            theForm.Controls.Add(new LiteralControl("<table width='100%' border='0'><tr><td valign='middle' class='textCell'>"));

            icon            = new Image();
            icon.ID         = "Icon";
            icon.ImageAlign = ImageAlign.Middle;
            String appPath = this.Request.ApplicationPath;

            if (!appPath.EndsWith("/", StringComparison.Ordinal))
            {
                appPath += "/";
            }
            String iconName = HttpContext.Current.Request.QueryString["icon"].ToUpperInvariant();

            switch (iconName)
            {
            case "EXCLAMATION":
            case "INFORMATION":
            case "QUESTION":
            case "STOP":
                icon.ImageUrl = Page.ClientScript.GetWebResourceUrl(typeof(DialogMessageBoxPage), "MetaBuilders.WebControls.Embedded." + iconName.ToLowerInvariant() + ".gif");
                icon.Visible  = true;
                break;

            default:
                icon.Visible = false;
                break;
            }
            theForm.Controls.Add(icon);

            prompt      = new Label();
            prompt.ID   = "Prompt";
            prompt.Text = HttpContext.Current.Request.QueryString["Prompt"];
            theForm.Controls.Add(prompt);

            theForm.Controls.Add(new LiteralControl("</td></tr><tr><td valign='bottom' align='center'>"));

            ok             = new Button();
            ok.ID          = "OK";
            ok.CommandName = "OK";
            ok.Text        = Resources.DialogWindow_OKSpaced;
            ok.Click      += new EventHandler(button_Click);
            theForm.Controls.Add(ok);

            theForm.Controls.Add(new LiteralControl(" "));

            retry             = new Button();
            retry.ID          = "Retry";
            retry.CommandName = "Retry";
            retry.Text        = Resources.DialogWindow_RetrySpaced;
            retry.Click      += new EventHandler(button_Click);
            theForm.Controls.Add(retry);

            theForm.Controls.Add(new LiteralControl(" "));

            yes             = new Button();
            yes.ID          = "Yes";
            yes.CommandName = "Yes";
            yes.Text        = Resources.DialogWindow_YesSpaced;
            yes.Click      += new EventHandler(button_Click);
            theForm.Controls.Add(yes);

            theForm.Controls.Add(new LiteralControl(" "));

            no             = new Button();
            no.ID          = "No";
            no.CommandName = "No";
            no.Text        = Resources.DialogWindow_NoSpaced;
            no.Click      += new EventHandler(button_Click);
            theForm.Controls.Add(no);

            theForm.Controls.Add(new LiteralControl(" "));

            cancel             = new Button();
            cancel.ID          = "Cancel";
            cancel.CommandName = Resources.DialogWindow_Cancel;
            cancel.Text        = Resources.DialogWindow_Cancel;
            cancel.Click      += new EventHandler(button_Click);
            theForm.Controls.Add(cancel);

            theForm.Controls.Add(new LiteralControl("</td></tr></table>"));

            this.Controls.Add(new LiteralControl("</body></html>"));
        }
Example #35
0
        /// <summary>
        /// Creates the page's control tree via code instead of parsing an aspx.
        /// </summary>
        private void InitializeComponent()
        {
            this.Controls.Add(new LiteralControl("<html><head>"));

            String title = HttpContext.Current.Request.QueryString["title"];

            if (title != null && title.Length > 0)
            {
                this.Controls.Add(new LiteralControl("<title>" + title + "</title>"));
            }

            this.Controls.Add(new LiteralControl("<style>\r\n"));

            Boolean supportsSystemColors    = true;
            HttpBrowserCapabilities browser = this.Request.Browser;

            if (browser.Browser.ToUpper() == "NETSCAPE" && browser.MajorVersion < 5)
            {
                supportsSystemColors = false;
            }
            if (browser.Browser.ToUpper() == "IE" && browser.MajorVersion < 4)
            {
                supportsSystemColors = false;
            }
            if (browser.Browser.ToUpper() == "OPERA" && browser.MajorVersion < 5)
            {
                supportsSystemColors = false;
            }
            if (supportsSystemColors)
            {
                this.Controls.Add(new LiteralControl(@"
body {
	background-color: ButtonFace;
}
"));
            }

            if (browser.Browser.ToUpper() == "IE" && browser.MajorVersion > 3)
            {
                this.Controls.Add(new LiteralControl(@"
table {
	height:100%;
}
td.textCell {
	height:100%;
}
"));
            }

            this.Controls.Add(new LiteralControl("\r\n</style></head><body style='overflow:auto;border-width:0px;'>"));


            theForm    = new System.Web.UI.HtmlControls.HtmlForm();
            theForm.ID = "TheForm";
            this.Controls.Add(theForm);

            theForm.Controls.Add(new LiteralControl("<table width='100%' border='0'><tr><td valign='middle' class='textCell'>"));

            icon            = new Image();
            icon.ID         = "Icon";
            icon.ImageAlign = ImageAlign.Middle;
            String appPath = this.Request.ApplicationPath;

            if (!appPath.EndsWith("/"))
            {
                appPath += "/";
            }
            icon.ImageUrl = appPath + DialogHandlerFactory.HandlerName + "?" + DialogHandlerFactory.HandlerNameKey + "=DialogImage&image=" + HttpContext.Current.Request.QueryString["icon"].ToLower();
            icon.Visible  = HttpContext.Current.Request.QueryString["icon"].ToLower() != "none";
            theForm.Controls.Add(icon);

            prompt      = new Label();
            prompt.ID   = "Prompt";
            prompt.Text = HttpContext.Current.Request.QueryString["Prompt"];
            theForm.Controls.Add(prompt);

            theForm.Controls.Add(new LiteralControl("</td></tr><tr><td valign='bottom' align='center'>"));

            ok             = new Button();
            ok.ID          = "OK";
            ok.CommandName = "OK";
            ok.Text        = "   OK   ";
            ok.Click      += new EventHandler(button_Click);
            theForm.Controls.Add(ok);

            theForm.Controls.Add(new LiteralControl(" "));

            retry             = new Button();
            retry.ID          = "Retry";
            retry.CommandName = "Retry";
            retry.Text        = " Retry ";
            retry.Click      += new EventHandler(button_Click);
            theForm.Controls.Add(retry);

            theForm.Controls.Add(new LiteralControl(" "));

            yes             = new Button();
            yes.ID          = "Yes";
            yes.CommandName = "Yes";
            yes.Text        = "  Yes   ";
            yes.Click      += new EventHandler(button_Click);
            theForm.Controls.Add(yes);

            theForm.Controls.Add(new LiteralControl(" "));

            no             = new Button();
            no.ID          = "No";
            no.CommandName = "No";
            no.Text        = "   No   ";
            no.Click      += new EventHandler(button_Click);
            theForm.Controls.Add(no);

            theForm.Controls.Add(new LiteralControl(" "));

            cancel             = new Button();
            cancel.ID          = "Cancel";
            cancel.CommandName = "Cancel";
            cancel.Text        = "Cancel";
            cancel.Click      += new EventHandler(button_Click);
            theForm.Controls.Add(cancel);

            theForm.Controls.Add(new LiteralControl("</td></tr></table>"));

            this.Controls.Add(new LiteralControl("</body></html>"));
        }
        /// <summary>
        /// Exports the datagrid to an Excel file with the name of the datasheet provided by the passed in parameter
        /// </summary>
        public virtual void Export(string reportName, Page currentPage, Control gridView)
        {
            System.Web.UI.HtmlControls.HtmlForm htmlForm = new System.Web.UI.HtmlControls.HtmlForm();
            currentPage.Controls.Add(htmlForm);
            htmlForm.Controls.Add(gridView);

            ClearChildControls((GridView)gridView);

            currentPage.Response.Clear();
            currentPage.Response.Buffer = true;

            currentPage.Response.AddHeader("Content-Disposition", "attachment; filename=" + reportName);
            currentPage.Response.ContentType = "application/vnd.ms-excel";
            currentPage.Response.ContentEncoding = System.Text.Encoding.UTF8;
            currentPage.Response.Charset = "";
            currentPage.EnableViewState = false;

            using (StringWriter stringWriter = new StringWriter())
            {
                HtmlTextWriter htmlWriter = new HtmlTextWriter(stringWriter);
                htmlForm.RenderControl(htmlWriter);
                htmlWriter.Flush();

                currentPage.Response.Write(stringWriter.ToString());
                currentPage.Response.End();
            }
        }
Example #37
0
        public Control ParseWithControls(page umbPage)
        {
            System.Web.HttpContext.Current.Trace.Write("umbracoTemplate", "Start parsing");

            if (System.Web.HttpContext.Current.Items["macrosAdded"] == null)
            {
                System.Web.HttpContext.Current.Items.Add("macrosAdded", 0);
            }

            StringBuilder tempOutput = _templateOutput;

            Control pageLayout  = new Control();
            Control pageHeader  = new Control();
            Control pageFooter  = new Control();
            Control pageContent = new Control();

            System.Web.UI.HtmlControls.HtmlForm pageForm       = new System.Web.UI.HtmlControls.HtmlForm();
            System.Web.UI.HtmlControls.HtmlHead pageAspNetHead = new System.Web.UI.HtmlControls.HtmlHead();

            // Find header and footer of page if there is an aspnet-form on page
            if (_templateOutput.ToString().ToLower().IndexOf("<?aspnet_form>") > 0 ||
                _templateOutput.ToString().ToLower().IndexOf("<?aspnet_form disablescriptmanager=\"true\">") > 0)
            {
                pageForm.Attributes.Add("method", "post");
                pageForm.Attributes.Add("action", Convert.ToString(System.Web.HttpContext.Current.Items["VirtualUrl"]));

                // Find header and footer from tempOutput
                int aspnetFormTagBegin  = tempOutput.ToString().ToLower().IndexOf("<?aspnet_form>");
                int aspnetFormTagLength = 14;
                int aspnetFormTagEnd    = tempOutput.ToString().ToLower().IndexOf("</?aspnet_form>") + 15;

                // check if we should disable the script manager
                if (aspnetFormTagBegin == -1)
                {
                    aspnetFormTagBegin =
                        _templateOutput.ToString().ToLower().IndexOf("<?aspnet_form disablescriptmanager=\"true\">");
                    aspnetFormTagLength = 42;
                }
                else
                {
                    ScriptManager sm = new ScriptManager();
                    sm.ID = "umbracoScriptManager";
                    pageForm.Controls.Add(sm);
                }


                StringBuilder header = new StringBuilder(tempOutput.ToString().Substring(0, aspnetFormTagBegin));

                // Check if there's an asp.net head element in the header
                if (header.ToString().ToLower().Contains("<?aspnet_head>"))
                {
                    StringBuilder beforeHeader = new StringBuilder(header.ToString().Substring(0, header.ToString().ToLower().IndexOf("<?aspnet_head>")));
                    header.Remove(0, header.ToString().ToLower().IndexOf("<?aspnet_head>") + 14);
                    StringBuilder afterHeader = new StringBuilder(header.ToString().Substring(header.ToString().ToLower().IndexOf("</?aspnet_head>") + 15, header.Length - header.ToString().ToLower().IndexOf("</?aspnet_head>") - 15));
                    header.Remove(header.ToString().ToLower().IndexOf("</?aspnet_head>"), header.Length - header.ToString().ToLower().IndexOf("</?aspnet_head>"));

                    // Find the title from head
                    MatchCollection matches = Regex.Matches(header.ToString(), @"<title>(.*?)</title>", RegexOptions.IgnoreCase | RegexOptions.Multiline);
                    if (matches.Count > 0)
                    {
                        StringBuilder  titleText   = new StringBuilder();
                        HtmlTextWriter titleTextTw = new HtmlTextWriter(new System.IO.StringWriter(titleText));
                        parseStringBuilder(new StringBuilder(matches[0].Groups[1].Value), umbPage).RenderControl(titleTextTw);
                        pageAspNetHead.Title = titleText.ToString();
                        header = new StringBuilder(header.ToString().Replace(matches[0].Value, ""));
                    }

                    pageAspNetHead.Controls.Add(parseStringBuilder(header, umbPage));
                    pageAspNetHead.ID = "head1";

                    // build the whole header part
                    pageHeader.Controls.Add(parseStringBuilder(beforeHeader, umbPage));
                    pageHeader.Controls.Add(pageAspNetHead);
                    pageHeader.Controls.Add(parseStringBuilder(afterHeader, umbPage));
                }
                else
                {
                    pageHeader.Controls.Add(parseStringBuilder(header, umbPage));
                }


                pageFooter.Controls.Add(parseStringBuilder(new StringBuilder(tempOutput.ToString().Substring(aspnetFormTagEnd, tempOutput.Length - aspnetFormTagEnd)), umbPage));
                tempOutput.Remove(0, aspnetFormTagBegin + aspnetFormTagLength);
                aspnetFormTagEnd = tempOutput.ToString().ToLower().IndexOf("</?aspnet_form>");
                tempOutput.Remove(aspnetFormTagEnd, tempOutput.Length - aspnetFormTagEnd);


                //throw new ArgumentException(tempOutput.ToString());
                pageForm.Controls.Add(parseStringBuilder(tempOutput, umbPage));

                pageContent.Controls.Add(pageHeader);
                pageContent.Controls.Add(pageForm);
                pageContent.Controls.Add(pageFooter);
                return(pageContent);
            }
            else
            {
                return(parseStringBuilder(tempOutput, umbPage));
            }
        }
Example #38
0
        /// <summary>
        /// Creates the page's control tree via code instead of parsing an aspx.
        /// </summary>
        private void InitializeComponent()
        {
            this.Controls.Add(new LiteralControl("<html><head>"));

            String title = HttpContext.Current.Request.QueryString["title"];
            if ( title != null && title.Length > 0 ) {
                this.Controls.Add( new LiteralControl("<title>" + title + "</title>"));
            }

            this.Controls.Add( new LiteralControl("<style>\r\n") );

            Boolean supportsSystemColors = true;
            HttpBrowserCapabilities browser = this.Request.Browser;
            if ( browser.Browser.ToUpper() == "NETSCAPE" && browser.MajorVersion < 5 ) {
                supportsSystemColors = false;
            }
            if ( browser.Browser.ToUpper() == "IE" && browser.MajorVersion < 4 ) {
                supportsSystemColors = false;
            }
            if ( browser.Browser.ToUpper() == "OPERA" && browser.MajorVersion < 5 ) {
                supportsSystemColors = false;
            }
            if ( supportsSystemColors ) {
                this.Controls.Add( new LiteralControl(@"
            body {
            background-color: ButtonFace;
            }
            "));
            }

            if ( browser.Browser.ToUpper() == "IE" && browser.MajorVersion > 3 ) {
            this.Controls.Add( new LiteralControl( @"
            table {
            height:100%;
            }
            td.textCell {
            height:100%;
            }
            "));
            }

            this.Controls.Add(new LiteralControl("\r\n</style></head><body style='overflow:auto;border-width:0px;'>"));

            theForm = new System.Web.UI.HtmlControls.HtmlForm();
            theForm.ID = "TheForm";
            this.Controls.Add(theForm);

            theForm.Controls.Add(new LiteralControl("<table width='100%' border='0'><tr><td valign='middle' class='textCell'>"));

            icon = new Image();
            icon.ID = "Icon";
            icon.ImageAlign = ImageAlign.Middle;
            String appPath = this.Request.ApplicationPath;
            if ( !appPath.EndsWith("/") ) {
                appPath += "/";
            }
            icon.ImageUrl =  appPath + DialogHandlerFactory.HandlerName + "?" + DialogHandlerFactory.HandlerNameKey + "=DialogImage&image=" + HttpContext.Current.Request.QueryString["icon"].ToLower();
            icon.Visible = HttpContext.Current.Request.QueryString["icon"].ToLower() != "none";
            theForm.Controls.Add(icon);

            prompt = new Label();
            prompt.ID = "Prompt";
            prompt.Text = HttpContext.Current.Request.QueryString["Prompt"];
            theForm.Controls.Add(prompt);

            theForm.Controls.Add(new LiteralControl("</td></tr><tr><td valign='bottom' align='center'>"));

            ok = new Button();
            ok.ID = "OK";
            ok.CommandName = "OK";
            ok.Text = "   OK   ";
            ok.Click += new EventHandler(button_Click);
            theForm.Controls.Add(ok);

            theForm.Controls.Add(new LiteralControl(" "));

            retry= new Button();
            retry.ID = "Retry";
            retry.CommandName = "Retry";
            retry.Text = " Retry ";
            retry.Click += new EventHandler(button_Click);
            theForm.Controls.Add(retry);

            theForm.Controls.Add(new LiteralControl(" "));

            yes = new Button();
            yes.ID = "Yes";
            yes.CommandName = "Yes";
            yes.Text = "  Yes   ";
            yes.Click += new EventHandler(button_Click);
            theForm.Controls.Add(yes);

            theForm.Controls.Add(new LiteralControl(" "));

            no = new Button();
            no.ID = "No";
            no.CommandName = "No";
            no.Text = "   No   ";
            no.Click += new EventHandler(button_Click);
            theForm.Controls.Add(no);

            theForm.Controls.Add(new LiteralControl(" "));

            cancel = new Button();
            cancel.ID = "Cancel";
            cancel.CommandName = "Cancel";
            cancel.Text = "Cancel";
            cancel.Click += new EventHandler(button_Click);
            theForm.Controls.Add(cancel);

            theForm.Controls.Add(new LiteralControl("</td></tr></table>"));

            this.Controls.Add(new LiteralControl("</body></html>"));
        }