/// <summary> /// Add border to the collection of borders MS Excel /// </summary> /// <param name="border">The border.</param> /// <remarks> /// Create style label. Path: \Workbook\Styles\Style\Borders\Border /// </remarks> private void WriteBorder(BorderModel border) { Writer.WriteStartElement("Border"); Writer.WriteAttributeString("ss:Position", border.Position.ToString()); Writer.WriteAttributeString("ss:Color", ColorHelper.ToHex(border.GetColor())); Writer.WriteAttributeString("ss:LineStyle", border.LineStyle.ToString()); Writer.WriteAttributeString("ss:Weight", border.Weight.IndexOf().ToString(CultureInfo.InvariantCulture)); Writer.WriteEndElement(); }
/// <summary> /// Fills a <see cref="OfficeOpenXml.Style.Border" /> object with model data. /// </summary> /// <param name="border"><see cref="OfficeOpenXml.Style.Border" /> object.</param> /// <param name="model">Border model definition.</param> private static void CreateFromModel(this Border border, BorderModel model) { if (model == null) { return; } switch (model.Position) { case KnownBorderPosition.Left: border.Left.Style = model.ToEppBorderStyle(); border.Left.Color.SetColor(model.GetColor()); break; case KnownBorderPosition.Top: border.Top.Style = model.ToEppBorderStyle(); border.Top.Color.SetColor(model.GetColor()); break; case KnownBorderPosition.Right: border.Right.Style = model.ToEppBorderStyle(); border.Right.Color.SetColor(model.GetColor()); break; case KnownBorderPosition.Bottom: border.Bottom.Style = model.ToEppBorderStyle(); border.Bottom.Color.SetColor(model.GetColor()); break; case KnownBorderPosition.DiagonalLeft: border.DiagonalDown = true; border.Diagonal.Style = model.ToEppBorderStyle(); border.Diagonal.Color.SetColor(model.GetColor()); break; case KnownBorderPosition.DiagonalRight: border.DiagonalUp = true; border.Diagonal.Style = model.ToEppBorderStyle(); border.Diagonal.Color.SetColor(model.GetColor()); break; } }