コード例 #1
0
        /// <summary>
        /// Render this control to the output parameter specified.
        /// </summary>
        /// <param name="output"> The HTML writer to write out to </param>
        protected override void Render(HtmlTextWriter output)
        {
            DojoSeminar seminar = new DojoSeminar(seminarID);

            output.Write("<table id=\"{0}\"", UniqueID);

            if (!CellPadding.IsEmpty)
            {
                output.Write(" CellPadding=\"{0}\"", CellPadding.ToString());
            }
            if (!CellSpacing.IsEmpty)
            {
                output.Write(" CellPadding=\"{0}\"", CellSpacing.ToString());
            }
            output.Write(" border=\"0\"");
            output.Write(" width=\"100%\"");
            output.Write(">");

            // Output Title
            output.WriteFullBeginTag("tr");
            output.WriteBeginTag("td");
            if (subtitleCssClass != "")
            {
                output.WriteAttribute("class", subtitleCssClass);
            }
            output.WriteLine(HtmlTextWriter.TagRightChar);
            output.Write(seminar.Name);
            output.WriteEndTag("td");
            output.WriteEndTag("tr");

            // Output Subtitle
            output.WriteFullBeginTag("tr");
            output.WriteBeginTag("td");
            if (subtitleCssClass != "")
            {
                output.WriteAttribute("class", subtitleCssClass);
            }
            output.WriteLine(HtmlTextWriter.TagRightChar);
            output.Write(seminar.Description);
            output.WriteEndTag("td");
            output.WriteEndTag("tr");

            // Output Dates
            output.WriteFullBeginTag("tr");
            output.WriteBeginTag("td");
            if (datesCssClass != "")
            {
                output.WriteAttribute("class", datesCssClass);
            }
            output.WriteLine(HtmlTextWriter.TagRightChar);
            output.Write(seminar.ConstructDateLongString());
            output.WriteEndTag("td");
            output.WriteEndTag("tr");

            // Output Menu
            if (seminar.RegistrationEnabled)
            {
                output.WriteFullBeginTag("tr");
                output.WriteBeginTag("td");
                if (menuCssClass != "")
                {
                    output.WriteAttribute("class", menuCssClass);
                }
                output.WriteLine(HtmlTextWriter.TagRightChar);
                output.WriteBeginTag("a");
                output.WriteAttribute("href", Page.ResolveUrl(string.Format(registrationUrlFormat, seminar.ID)));
                output.Write(HtmlTextWriter.TagRightChar);
                output.Write("Register");
                output.WriteEndTag("a");
                output.WriteEndTag("td");
                output.WriteEndTag("tr");
            }

            output.WriteFullBeginTag("tr");
            output.WriteBeginTag("td");
            output.Write(HtmlTextWriter.TagRightChar);

            if (seminar.DetailsOverrideUrl.Length > 0)
            {
                try
                {
                    HttpContext.Current.Server.Execute(seminar.DetailsOverrideUrl, output);
                }
                catch
                {
                    if (errorPath != null)
                    {
                        HttpContext.Current.Server.Execute(errorPath, output);
                    }
                    else
                    {
                        output.Write("Could not find overriden details for seminar!");
                    }
                }
            }
            else if (seminar.Details.Length > 0)
            {
                output.Write(seminar.Details);
            }
            else
            {
                output.Write("<b>No details were specified for this seminar.</b>");
            }

            output.WriteEndTag("td");
            output.WriteEndTag("tr");
            output.WriteEndTag("table");
        }
コード例 #2
0
        private void renderCreateTab(HtmlTextWriter output)
        {
            output.WriteFullBeginTag("tr");
            RenderCell("Seminar", "class=\"row1\"");
            RenderCell(seminar.Name, "class=\"row1\"");
            output.WriteEndTag("tr");

            //
            // Render Seminar Dates
            //
            output.WriteFullBeginTag("tr");
            output.WriteBeginTag("td");
            output.WriteAttribute("class", "row1");
            output.WriteAttribute("nowrap", "true");
            output.Write(HtmlTextWriter.TagRightChar);
            output.Write("Dates");
            output.WriteEndTag("td");
            output.WriteBeginTag("td");
            output.WriteAttribute("width", "100%");
            output.WriteAttribute("class", "row2");
            output.Write(HtmlTextWriter.TagRightChar);
            output.Write(seminar.ConstructDateLongString());
            output.WriteEndTag("td");
            output.WriteEndTag("tr");

            output.WriteFullBeginTag("tr");
            output.WriteBeginTag("td");
            output.WriteAttribute("class", "row1");
            output.WriteAttribute("colspan", "2");
            output.Write(HtmlTextWriter.TagRightChar);
            output.Write("<strong>Instructions:</strong> Please enter the person you wish to register below.");
            output.WriteEndTag("td");
            output.WriteEndTag("tr");

            //
            // Render Contact
            //
            output.WriteFullBeginTag("tr");
            output.WriteBeginTag("td");
            output.WriteAttribute("colspan", "2");
            output.WriteAttribute("class", SubHeaderCssClass);
            output.Write(HtmlTextWriter.TagRightChar);
            output.Write("Contact Information");
            output.WriteEndTag("td");
            output.WriteEndTag("tr");

            //
            // Render Name
            //
            output.WriteFullBeginTag("tr");
            output.WriteBeginTag("td");
            output.WriteAttribute("class", "row1");
            output.Write(HtmlTextWriter.TagRightChar);
            output.Write("Name");
            output.WriteEndTag("td");
            output.WriteBeginTag("td");
            output.WriteAttribute("class", "row2");
            output.Write(HtmlTextWriter.TagRightChar);
            tbName.RenderControl(output);
            output.Write(" ");
            fvName.RenderControl(output);
            output.WriteEndTag("td");
            output.WriteEndTag("tr");

            RenderPropertyRows("row1", "row2",
                               new string[] { "Address", "", "City", "State/Province", "PostalCode",
                                              "Country", "Home", "Work" },
                               new Control[] { tbAddress1, tbAddress2, tbCity, tbStateProvince, tbPostalCode,
                                               tbCountry, tbHomePhone, tbWorkPhone });

            //
            // Render Email
            //
            output.WriteFullBeginTag("tr");
            output.WriteBeginTag("td");
            output.WriteAttribute("class", "row1");
            output.Write(HtmlTextWriter.TagRightChar);
            output.Write("Email");
            output.WriteEndTag("td");
            output.WriteBeginTag("td");
            output.WriteAttribute("class", "row2");
            output.Write(HtmlTextWriter.TagRightChar);
            tbEmail1.RenderControl(output);
            output.Write(" ");
            fvEmail1.RenderControl(output);
            evEmail1.RenderControl(output);
            output.WriteEndTag("td");
            output.WriteEndTag("tr");

            //
            // Render ClassUnits
            //
            output.WriteFullBeginTag("tr");
            output.WriteBeginTag("td");
            output.WriteAttribute("class", "row1");
            output.Write(HtmlTextWriter.TagRightChar);
            switch (seminar.ClassUnitType)
            {
            case DojoSeminarClassUnitType.Day:
                output.Write(Localization.Strings.DayUnit_Plural);
                break;

            case DojoSeminarClassUnitType.Class:
                output.Write(Localization.Strings.ClassUnit_Plural);
                break;

            case DojoSeminarClassUnitType.None:
                output.Write("None");
                break;
            }
            output.WriteEndTag("td");
            output.WriteBeginTag("td");
            output.WriteAttribute("class", "row2");
            output.Write(HtmlTextWriter.TagRightChar);
            ddClassUnits.RenderControl(output);
            output.WriteEndTag("td");
            output.WriteEndTag("tr");

            //
            // Render Options
            //
            output.WriteFullBeginTag("tr");
            output.WriteBeginTag("td");
            output.WriteAttribute("colspan", "4");
            output.WriteAttribute("class", SubHeaderCssClass);
            output.Write(HtmlTextWriter.TagRightChar);
            output.Write("Options");
            output.WriteEndTag("td");
            output.WriteEndTag("tr");

            output.WriteFullBeginTag("tr");
            output.WriteBeginTag("td");
            output.WriteAttribute("colspan", "4");
            output.WriteAttribute("class", "row1");
            output.Write(HtmlTextWriter.TagRightChar);

            output.WriteBeginTag("table");
            output.WriteAttribute("width", "100%");
            output.Write(HtmlTextWriter.TagRightChar);

            bool valueSet = false;                                              // keeps track of value setting in input controls!
            DojoSeminarOption option;

            for (int i = 0; i < seminar.Options.Count; i++)
            {
                option = seminar.Options[i];
                output.WriteFullBeginTag("tr");
                output.WriteBeginTag("td");
                output.WriteAttribute("class", "row1");
                output.Write(HtmlTextWriter.TagRightChar);
                if (option.MaxQuantity == 1)
                {
                    output.WriteBeginTag("input");
                    output.WriteAttribute("type", "checkbox");
                    output.WriteAttribute("name", ClientID + "___option" + option.iD.ToString());
                    if (registrationOptions != null)
                    {
                        foreach (DojoSeminarRegistrationOption registrationOption in registrationOptions)
                        {
                            if (registrationOption.parentOption.iD == option.iD)
                            {
                                output.WriteAttribute("checked", "true");
                            }
                        }
                    }
                    output.Write(HtmlTextWriter.TagRightChar);
                }
                else if (option.MaxQuantity > 1)
                {
                    output.WriteBeginTag("input");
                    output.WriteAttribute("type", "text");
                    output.WriteAttribute("name", ClientID + "___qty" + option.iD);
                    output.WriteAttribute("style", "width:35px;");
                    if (registrationOptions != null)
                    {
                        foreach (DojoSeminarRegistrationOption registrationOption in registrationOptions)
                        {
                            if (option.iD == registrationOption.parentOption.iD)
                            {
                                valueSet = true;
                                output.WriteAttribute("value", registrationOption.Quantity.ToString());
                            }
                        }
                    }
                    if (!valueSet)
                    {
                        output.WriteAttribute("value", "0");
                    }
                    valueSet = false;
                    output.Write(HtmlTextWriter.TagRightChar);
                }
                output.WriteEndTag("td");
                output.WriteBeginTag("td");
                output.WriteAttribute("class", "row1");
                output.WriteAttribute("width", "100%");
                output.Write(HtmlTextWriter.TagRightChar);
                output.Write(option.Name);
                if (option.Fee > 0)
                {
                    output.Write(" (");
                    output.Write(option.Fee.ToString("c"));
                    if (option.maxQuantity > 1)
                    {
                        output.Write(" ea.)");
                    }
                    else
                    {
                        output.Write(")");
                    }
                }
                output.WriteEndTag("td");
                output.WriteBeginTag("td");
                output.WriteAttribute("class", "row1");
                output.Write(HtmlTextWriter.TagRightChar);
                output.WriteEndTag("td");
                output.WriteEndTag("tr");

                output.WriteFullBeginTag("tr");
                output.WriteBeginTag("td");
                output.WriteAttribute("class", "row1");
                output.Write(HtmlTextWriter.TagRightChar);
                output.Write("&nbsp;");
                output.WriteEndTag("td");
                output.WriteBeginTag("td");
                output.WriteAttribute("class", "row1");
                output.WriteAttribute("width", "100%");
                output.WriteAttribute("colspan", "2");
                output.Write(HtmlTextWriter.TagRightChar);
                output.Write(option.description);
                output.WriteEndTag("td");
                output.WriteEndTag("tr");
            }

            output.WriteEndTag("table");
            output.WriteEndTag("td");
            output.WriteEndTag("tr");

            //
            // Render OK/Cancel Buttons
            //
            output.WriteFullBeginTag("tr");
            output.WriteBeginTag("td");
            output.WriteAttribute("colspan", "2");
            output.WriteAttribute("align", "right");
            output.WriteAttribute("class", "row1");
            output.Write(HtmlTextWriter.TagRightChar);
            btOk.RenderControl(output);
            output.Write("&nbsp;");
            btCancel.RenderControl(output);
            output.WriteEndTag("td");
            output.WriteEndTag("tr");
        }