Применить стиль к ячейке

Применение пользовательского стиля к ячейке - пример

Для изменения шрифта и цвета ячейки с помощью Aspose.Cells.GridDesktop, выполните следующие шаги:

  • Получить доступ к любому желаемому Рабочему листу
  • Получите доступ к Ячейке, на которой мы хотим применить Стиль
  • Получите Стиль Ячейки
  • Установите свойства стиля в соответствии с вашими индивидуальными потребностями
  • Наконец, установите Стиль Ячейки с обновленным

Объект Стиль предлагает множество полезных свойств и методов, которые могут использоваться разработчиками для настройки стиля в соответствии с их требованиями. В приведенном ниже коде показано, как применить пользовательский стиль к ячейке.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Accessing the worksheet of the Grid that is currently active
Worksheet sheet = gridDesktop1.GetActiveWorksheet();
// Accessing "A1" cell in the worksheet
GridCell cell = sheet.Cells["A1"];
// Adding a value to "A1" cell
cell.Value = "Hello";
// Getting the Style object for the cell
Style style = cell.GetStyle();
// Setting Style properties like border, alignment etc.
style.SetBorderLine(BorderType.Right, BorderLineType.Thick);
style.SetBorderColor(BorderType.Right, Color.Blue);
style.HAlignment = HorizontalAlignmentType.Centred;
style.Color = Color.Yellow;
style.CellLocked = true;
style.VAlignment = VerticalAlignmentType.Top;
// Setting the style of the cell with the customized Style object
cell.SetStyle(style);

Рисование границ ячеек

С помощью объекта Стиль можно очень легко рисовать границы ячейки. Границы можно нарисовать любого цвета. Более того, разработчики также имеют возможность выбрать определенный тип линии, который будет использоваться для обводки ячейки. Разработчики могут использовать методы SetBorderLine и SetBorderColor объекта Стиль для прорисовки границ любого типа и цветов. Аналогично, чтобы получить информацию о границе любой ячейки, разработчики также могут воспользоваться методами GetBorderLine и GetBorderColor объекта Стиль.

Типы границ

Aspose.Cells.GridDesktop поддерживает шесть типов границ, а именно:

  • Левая , представляет левую границу
  • Правая , представляет правую границу
  • Верхняя , представляет верхнюю границу
  • Нижняя , представляет нижнюю границу
  • ДиагональВниз , представляет диагональную границу вниз
  • ДиагональВверх , представляет диагональную границу вверх

Типы линий границ

Граница состоит из линии. Изменение типа линии меняет внешний вид границы. Aspose.Cells.GridDesktop поддерживает множество типов линий границ, которые также перечислены ниже:

  • Нет , представляет отсутствие границы
  • Тонкая , представляет сплошную границу
  • Средняя , представляет сплошную границу с шириной линии равной 2f
  • Пунктирная , представляет пунктирную границу
  • Точечная , представляет точечную границу
  • Толстая , представляет сплошную границу с шириной линии равной 3f
  • MediumDashed, представляет пунктирную границу линии с шириной линии, равной 2f
  • ThinDashDotted, представляет пунктирно-точечную границу линии
  • MediumDashDotted, представляет пунктирно-точечную границу линии с шириной линии, равной 2f
  • ThinDashDotDotted, представляет пунктирно-точечно-точечную границу линии
  • MediumDashDotDotted, представляет пунктирно-точечно-точечную границу линии с шириной линии, равной 2f

Подводя итоги - Пример

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Accessing first worksheet of the Grid
Aspose.Cells.GridDesktop.Worksheet sheet = gridDesktop1.Worksheets[0];
// Accessing "B2" cell and setting its value
Aspose.Cells.GridDesktop.GridCell cell = sheet.Cells["B2"];
cell.Value = "None";
// Accessing "D4" cell and setting its value & column width
cell = sheet.Cells["D4"];
cell.Value = "out line Borders";
sheet.Columns[cell.Column].Width = 120;
// Accessing the Style object of "D4" cell and drawing thin red borders around it
Aspose.Cells.GridDesktop.Style style = cell.GetStyle();
style.SetBorderLine(BorderType.Left, BorderLineType.Thin);
style.SetBorderColor(BorderType.Left, System.Drawing.Color.Red);
style.SetBorderLine(BorderType.Right, BorderLineType.Thin);
style.SetBorderColor(BorderType.Right, System.Drawing.Color.Red);
style.SetBorderLine(BorderType.Top, BorderLineType.Thin);
style.SetBorderColor(BorderType.Top, System.Drawing.Color.Red);
style.SetBorderLine(BorderType.Bottom, BorderLineType.Thin);
style.SetBorderColor(BorderType.Bottom, System.Drawing.Color.Red);
cell.SetStyle(style);
// Accessing "B6" cell and setting its value, row height & column width
cell = sheet.Cells["B6"];
cell.Value = "Border with\ndifferent colors";
sheet.Rows[cell.Row].Height = 40;
sheet.Columns[cell.Column].Width = 110;
// Accessing the Style object of "B6" cell and drawing thin borders of different colors around it
style = cell.GetStyle();
style.SetBorderLine(BorderType.Left, BorderLineType.Thin);
style.SetBorderColor(BorderType.Left, System.Drawing.Color.Red);
style.SetBorderLine(BorderType.Right, BorderLineType.Thin);
style.SetBorderColor(BorderType.Right, System.Drawing.Color.Green);
style.SetBorderLine(BorderType.Top, BorderLineType.Thin);
style.SetBorderColor(BorderType.Top, System.Drawing.Color.Yellow);
style.SetBorderLine(BorderType.Bottom, BorderLineType.Thin);
style.SetBorderColor(BorderType.Bottom, System.Drawing.Color.Blue);
cell.SetStyle(style);
// Accessing "D7" cell and setting its value, row height & column width
cell = sheet.Cells["D7"];
cell.Value = "Border with\ndifferent styles";
sheet.Rows[cell.Row].Height = 40;
sheet.Columns[cell.Column].Width = 110;
// Accessing the Style object of "D7" cell and drawing different borders of different colors around it
style = cell.GetStyle();
style.SetBorderLine(BorderType.Left, BorderLineType.Thin);
style.SetBorderColor(BorderType.Left, System.Drawing.Color.Red);
style.SetBorderLine(BorderType.Right, BorderLineType.Medium);
style.SetBorderColor(BorderType.Right, System.Drawing.Color.Red);
style.SetBorderLine(BorderType.Top, BorderLineType.Dashed);
style.SetBorderColor(BorderType.Top, System.Drawing.Color.Yellow);
style.SetBorderLine(BorderType.Bottom, BorderLineType.Dotted);
style.SetBorderColor(BorderType.Bottom, System.Drawing.Color.Black);
cell.SetStyle(style);
// Accessing "B8" cell and drawing a single red border to its bottom side
cell = sheet.Cells["B8"];
cell.Value = "Only one border";
style = cell.GetStyle();
style.SetBorderLine(BorderType.Bottom, BorderLineType.MediumDashDotted);
style.SetBorderColor(BorderType.Bottom, System.Drawing.Color.Red);
cell.SetStyle(style);

Установка числовых форматов

Aspose.Cells.GridDesktop также предоставляет настройку видов числовых форматов. Aspose.Cells.GridDesktop предлагает 58 встроенных числовых форматов. Для просмотра полного списка всех поддерживаемых числовых форматов обратитесь к Поддерживаемые числовые форматы

Всем встроенным числовым форматам присваивается номер Index. Например, номер Index числового формата 0.00E+00 равен 11. Чтобы использовать встроенный числовой формат в любой ячейке, разработчики могут установить свойство NumberFormat объекта Style на номер Index конкретного числового формата. Однако, если разработчики нуждаются в собственном настраиваемом числовом формате, они также могут использовать свойство Custom объекта Style.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Accessing first worksheet of the Grid
Aspose.Cells.GridDesktop.Worksheet sheet = gridDesktop1.Worksheets[0];
// Creating a standard Font object that will be applied on cells
System.Drawing.Font font = new System.Drawing.Font("MS Serif", 9f, FontStyle.Bold);
// Accessing and adding values to cells
Aspose.Cells.GridDesktop.GridCell cell = sheet.Cells["B2"];
cell.Value = "General";
cell.SetFont(font);
cell = sheet.Cells["C2"];
cell.Value = 1000;
cell = sheet.Cells["D2"];
cell.Value = "Text";
cell = sheet.Cells["B4"];
cell.Value = "Number";
cell.SetFont(font);
//Accessing the Style object of "C4" cell and setting its number format to index No.2
cell = sheet.Cells["C4"];
cell.Value = 20.00;
Aspose.Cells.GridDesktop.Style style = cell.GetStyle();
// For applying "0.00" format
style.NumberFormat = 2;
cell.SetStyle(style);
// Accessing the Style object of "D4" cell and setting its number format to index No.3
cell = sheet.Cells["D4"];
cell.Value = -2000.00;
style = cell.GetStyle();
// For "#,##0" format
style.NumberFormat = 3;
cell.SetStyle(style);
// Accessing a cell and setting its value & font
cell = sheet.Cells["B6"];
cell.Value = "Currency";
cell.SetFont(font);
// Accessing the Style object of "C6" cell and setting its number format to index No.6
cell = sheet.Cells["C6"];
cell.Value = -120.00;
style = cell.GetStyle();
// For Applying "\"$\"#,##0_);[Red](\"$\"#,##0)" expression
style.NumberFormat = 6;
cell.SetStyle(style);
// Accessing the Style object of "D6" cell and setting its number format to index No.41
cell = sheet.Cells["D6"];
cell.Value = 2400;
style = cell.GetStyle();
// For applying "_(\"$\"* #,##0_);_(\"$\"* (#,##0);_(\"$\"* \"-\"_);_(@_)" expression
style.NumberFormat = 41;
cell.SetStyle(style);
// Accessing a cell and setting its value & font
cell = sheet.Cells["B8"];
cell.Value = "Percent";
cell.SetFont(font);
// Accessing the Style object of "C8" cell and setting its number format to index No.9
cell = sheet.Cells["C8"];
cell.Value = 0.32;
style = cell.GetStyle();
style.NumberFormat = 9;
cell.SetStyle(style);
// Accessing the Style object of "D8" cell and setting its number format to index No.10
cell = sheet.Cells["D8"];
cell.Value = 0.64;
style = cell.GetStyle();
// For applying "0.00%" format
style.NumberFormat = 10;
cell.SetStyle(style);
// Accessing a cell and setting its value & font
cell = sheet.Cells["B10"];
cell.Value = "Scientific";
cell.SetFont(font);
// Accessing the Style object of "C10" cell and setting its number format to index No.11
cell = sheet.Cells["C10"];
cell.Value = 0.51;
style = cell.GetStyle();
// For applying "0.00E+00" format
style.NumberFormat = 11;
cell.SetStyle(style);
// Accessing the Style object of "D10" cell and setting its number format to index No.48
cell = sheet.Cells["D10"];
cell.Value = 32000;
style = cell.GetStyle();
style.NumberFormat = 48;
cell.SetStyle(style);
// Accessing a cell and setting its value & font
cell = sheet.Cells["B12"];
cell.Value = "DateTime";
cell.SetFont(font);
// Accessing the Style object of "C12" cell and setting a custom number format for it
cell = sheet.Cells["C12"];
cell.Value = DateTime.Now;
style = cell.GetStyle();
style.Custom = "yyyy-MM-dd";
cell.SetStyle(style);
// Accessing the Style object of "D12" cell and setting its number format to Index No.15
cell = sheet.Cells["D12"];
sheet.Columns[cell.Column].Width = 100;
cell.Value = DateTime.Now;
style = cell.GetStyle();
// For "d-mmm-yy"
style.NumberFormat = 15;
cell.SetStyle(style);
// Accessing the Style object of "C13" cell and setting a custom number format for it
cell = sheet.Cells["C13"];
cell.Value = DateTime.Now;
style = cell.GetStyle();
style.Custom = "hh:mm:ss";
cell.SetStyle(style);
// Accessing the Style object of "D13" cell and setting its number format to index No.18
cell = sheet.Cells["D13"];
cell.Value = DateTime.Now;
style = cell.GetStyle();
// For applying "h:mm AM/PM" format
style.NumberFormat = 18;
cell.SetStyle(style);
// Accessing the Style object of "C14" cell and setting a custom number format for it
cell = sheet.Cells["C14"];
sheet.Columns[cell.Column].Width = 160;
cell.Value = DateTime.Now;
style = cell.GetStyle();
style.Custom = "yyyy-MM-dd hh:mm:ss";
cell.SetStyle(style);