セルにスタイルを適用

セルにカスタムスタイルを適用する - 例

Aspose.Cells.GridDesktopを使用してセルのフォントと色を変更するには、以下の手順に従ってください:

  • 任意の Worksheet にアクセスします
  • 適用する Style のある Cell にアクセス
  • CellStyle を取得
  • カスタムの必要に応じて スタイル プロパティを設定
  • 最後に、更新された StyleCell に設定

開発者が要件に応じてスタイルをカスタマイズするために使用できる Style オブジェクトには、多くの有用なプロパティやメソッドが提供されています。以下のコードでは、セルにカスタムスタイルを適用する方法を示しています。

// 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);

セルの境界線の描画

Style オブジェクトを使用すると、セルの境界線を非常に簡単に描くことができます。境界線の色を自由に選択することができます。また、開発者は、セルの周囲に描画する特定のタイプの線を選択する柔軟性も持っています。開発者は、Style オブジェクトの SetBorderLine および SetBorderColor メソッドを使用して、任意のタイプと色の境界線を描画することができます。同様に、任意のセルの境界情報を取得するには、Style オブジェクトの GetBorderLine および GetBorderColor メソッドを使用することもできます。

境界線の種類

Aspose.Cells.GridDesktop でサポートされている境界線の種類は次の通りです:

  • : 左の境界線を表します
  • : 右の境界線を表します
  • : 上の境界線を表します
  • : 下の境界線を表します
  • DiagonalDown : 対角線向けの境界線を表します
  • DiagonalUp : 対角線向けの境界線を表します

境界線の種類

境界線は線で構成されます。線の種類を変更すると、境界線の外観が変わります。Aspose.Cells.GridDesktop でサポートされている多くの種類の境界線が以下にリストされています:

  • None : 境界線がないことを示します
  • 薄い 、実線の境界を表します
  • 、実線の線幅が2fに等しい境界を表します
  • 点線 、点線の境界を表します
  • 点線 、点線の境界を表します
  • 太い 、実線の線幅が3fに等しい境界を表します
  • 中太 、線幅が2fに等しい点線の境界を表します
  • 薄い点線点 、破線点線の境界を表します
  • 中点線点 、線幅が2fに等しい破線点線の境界を表します
  • 薄い点線破線点 、点線破線の境界を表します
  • 中点線破線点 、線幅が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種類の組み込み数値書式があります。すべてのサポートされている数値書式の完全なリストを表示するには、サポートされている数値書式のリストを参照してください。

すべての組み込み数値書式にはインデックス番号が割り当てられています。たとえば0.00E+00数値書式のインデックス番号は11です。任意のセルで組み込みの数値書式を使用するには、開発者はStyleオブジェクトのNumberFormatプロパティをその特定の数値書式のインデックス番号に設定することができます。ただし、開発者が独自のカスタム数値書式が必要な場合は、StyleオブジェクトのCustomプロパティも使用できます。

// 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);