コード例 #1
0
        protected virtual void WriteCell(StringBuilder stringBuilder, HtmlReportCell cell, string tableCellTagName)
        {
            this.BeginWrappingElement(stringBuilder, cell, tableCellTagName);

            this.WriteContent(stringBuilder, cell);

            this.EndWrappingElement(stringBuilder, tableCellTagName);
        }
コード例 #2
0
        public string WriteBodyCell(HtmlReportCell cell)
        {
            StringBuilder stringBuilder = new StringBuilder();

            this.WriteCell(stringBuilder, cell, "td");

            return(stringBuilder.ToString());
        }
コード例 #3
0
        protected void WriteContent(StringBuilder stringBuilder, HtmlReportCell cell)
        {
            string value = cell.GetValue <string>();

            if (!cell.IsHtml)
            {
                value = HttpUtility.HtmlEncode(value);
            }

            stringBuilder.Append(value);
        }
コード例 #4
0
        protected void WriteAttributes(StringBuilder stringBuilder, HtmlReportCell cell)
        {
            this.WriteAttribute(stringBuilder, "rowSpan", cell.RowSpan.ToString(), "1");
            this.WriteAttribute(stringBuilder, "colSpan", cell.ColumnSpan.ToString(), "1");
            this.WriteAttribute(stringBuilder, "class", string.Join(" ", cell.CssClasses));
            this.WriteAttribute(
                stringBuilder,
                "style",
                string.Join(
                    " ",
                    cell.Styles
                    .Select(x => $"{x.Key}: {x.Value};")));

            foreach ((string name, string value) in cell.Attributes)
            {
                this.WriteAttribute(stringBuilder, name, value);
            }
        }
コード例 #5
0
 protected virtual void BeginWrappingElement(StringBuilder stringBuilder, HtmlReportCell cell, string tableCellTagName)
 {
     stringBuilder.Append("<").Append(tableCellTagName).Append(" ");
     this.WriteAttributes(stringBuilder, cell);
     stringBuilder.Append(">");
 }